/* Public stories and customer guidance share the storefront's quiet palette. */
.service-page{--service-paper:var(--paper);--service-rose:var(--rose);--service-line:var(--line);max-width:1320px;color:var(--ink);padding-top:28px}
.service-page .eyebrow{font-size:10px;letter-spacing:.18em;color:var(--muted)}
.service-page :is(h1,h2,h3,p,a,summary){overflow-wrap:anywhere}
.service-page .button{min-height:48px;gap:14px;border-radius:3px;background:var(--green);border-color:var(--green);font-size:13px}
.service-page .button:hover{background:var(--green)}
.service-page .text-link{white-space:normal;font-size:13px;letter-spacing:0;line-height:1.9}
.service-page [id]{scroll-margin-top:24px}
.service-page [hidden]{display:none!important}
.service-breadcrumb{display:flex;flex-wrap:wrap;gap:8px;font-size:11px;color:var(--muted);margin-bottom:20px}
.service-breadcrumb a{padding-block:8px;min-height:32px}.service-breadcrumb>span{padding-block:8px}
.service-hero{position:relative;display:flex;align-items:center;justify-content:space-between;gap:30px;background:transparent;padding:24px 0 30px;border-radius:0}
.service-hero>div{min-width:0;position:relative;z-index:1}
.service-hero h1{font:500 clamp(28px,3vw,40px)/1.55 var(--serif);letter-spacing:.08em;margin:12px 0 16px}
.service-hero p{font-size:15px;line-height:1.9;color:var(--muted);margin:10px 0}
.service-hero .service-hero-lead{font:500 clamp(18px,2vw,24px)/1.8 var(--serif);color:var(--green);letter-spacing:.06em}
.service-hero-flower{display:none;place-items:center;flex:none;width:120px;height:120px;border:1px solid var(--rose);border-radius:50%;color:var(--muted)}
.service-hero-flower svg{width:60px;height:60px;stroke-width:.8}
.service-hero-brand{display:grid;grid-template-columns:1fr 1fr;padding:0;overflow:hidden;gap:0;background:var(--surface);margin-bottom:18px}
.service-hero-brand>div{padding:40px 12%}.service-hero-brand .button{margin-top:20px}
.service-hero-brand figure{margin:0;position:relative;min-width:0;height:440px;overflow:hidden}
.service-hero-brand img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.service-hero-brand figcaption{position:absolute;bottom:0;left:0;right:0;padding:12px 18px;background:#faf7f2ed;color:var(--ink);font:12px/1.7 var(--sans);letter-spacing:.03em}
.service-nav{display:flex;justify-content:center;gap:32px;border-bottom:1px solid var(--service-line);margin-bottom:44px}
.service-nav a{font-size:13px;min-height:60px;display:flex;align-items:center;border-bottom:2px solid transparent;padding:12px 6px;color:var(--muted)}
.service-nav a[aria-current]{border-color:var(--service-rose);color:var(--muted)}
.service-nav a:hover{color:var(--ink)}
.service-reading{max-width:820px;margin:0 auto}
.service-page .prose{font-size:17px;line-height:2;color:var(--green);overflow-wrap:anywhere}
.service-page .prose>:first-child{margin-top:0}.service-page .prose>:last-child{margin-bottom:0}
.service-page .prose a{text-decoration:underline;text-underline-offset:4px;color:var(--green)}
.service-page .prose :is(ul,ol){padding-left:1.5em}
.service-page .prose h3{font:500 19px/1.7 var(--serif)}
.service-page .table-wrap{max-width:100%;margin:20px 0;border-color:var(--service-line);border-radius:3px}
.service-page .table-wrap table{min-width:0;width:100%;font-size:13px}
.service-page .table-wrap :is(th,td){white-space:normal;padding:12px 10px;line-height:1.8}
.service-page .table-wrap th{background:var(--paper);color:var(--green)}
.faq-tools{background:var(--surface);border:1px solid var(--service-line);padding:24px 28px;border-radius:4px;margin-bottom:30px}
.faq-tools label{display:block;font:500 20px/1.7 var(--serif);margin-bottom:14px}
.faq-search{display:flex;align-items:center;background:var(--surface);border:1px solid var(--rose);border-radius:3px;padding-left:14px}
.faq-search svg{flex:none;color:var(--muted);width:19px}
.faq-search input{width:100%;min-width:0;min-height:50px;font-size:16px;background:transparent;border:0;margin:0;padding:12px}
.faq-search button{min-height:48px;min-width:56px;background:transparent;border:0;color:var(--muted);font-size:13px;padding:10px;cursor:pointer}
.faq-search:focus-within{outline:2px solid var(--green);outline-offset:3px}
.faq-search input:focus{outline:none}.faq-tools p{font-size:12px;color:var(--muted);margin:12px 0 0}
.faq-item{border-bottom:1px solid var(--service-line);scroll-margin-top:24px}
.faq-item summary,.brand-story-gallery summary{display:flex;justify-content:space-between;align-items:center;gap:20px;list-style:none;cursor:pointer;padding:23px 8px;min-height:64px}
.faq-item summary::-webkit-details-marker,.brand-story-gallery summary::-webkit-details-marker{display:none}
.faq-item summary h2{font:500 18px/1.8 var(--serif);letter-spacing:.02em;margin:0}
.service-toggle{width:18px;height:18px;position:relative;flex:none;color:var(--muted)}
.service-toggle:before,.service-toggle:after{content:"";position:absolute;background:currentColor;left:2px;top:8px;width:14px;height:1px}
.service-toggle:after{transform:rotate(90deg)}details[open]>summary .service-toggle:after{transform:rotate(0)}
.faq-item[open]{background:var(--surface)}.faq-item[open] summary{color:var(--muted)}
.faq-answer{padding:0 32px 28px 8px}
.faq-empty{padding:40px 24px;text-align:center;background:var(--paper);border-radius:4px}
.faq-empty h2{font:500 22px/1.7 var(--serif)}.faq-empty p{font-size:14px;line-height:1.9}
.faq-empty button{cursor:pointer;border:0;background:transparent;min-height:44px;color:var(--green)}
.service-policy{display:grid;grid-template-columns:260px minmax(0,1fr);gap:56px;align-items:start;margin:0 3%}
.policy-index{position:sticky;top:24px;padding:24px;background:var(--paper);border:1px solid var(--service-line);border-radius:4px}
.policy-index summary{font:500 17px/1.8 var(--serif);cursor:pointer;min-height:32px}.policy-index[open] summary{margin-bottom:14px}
.policy-index ol{list-style:none;padding:0;margin:0 0 18px}
.policy-index li{border-bottom:1px solid var(--service-line)}
.policy-index li a{font-size:13px;line-height:1.9;display:flex;align-items:center;padding:12px 0;min-height:44px}
.policy-index li a:hover{color:var(--muted)}
.policy-content{min-width:0}.policy-intro{padding-bottom:20px}
.policy-section{padding:26px 0 32px;border-bottom:1px solid var(--service-line)}
.policy-section:first-child{padding-top:0}
.policy-section h2{font:500 22px/1.7 var(--serif);margin:0 0 18px;letter-spacing:.02em}
.brand-story-content{display:grid;grid-template-columns:1fr 2fr;gap:70px;padding:28px 6% 60px}
.brand-story-aside h2{font:500 26px/1.9 var(--serif);letter-spacing:.06em;margin:14px 0}
.brand-story-leaf{display:block;margin-top:30px;color:var(--rose)}.brand-story-leaf svg{width:44px;height:44px;stroke-width:1}
.brand-story-copy{min-width:0}.brand-story-copy>.prose{margin:0 0 24px;line-height:2.3}
.brand-story-gallery{border:1px solid var(--service-line);border-radius:4px;margin:26px 0;background:var(--surface)}
.brand-story-gallery summary{padding:22px 26px}.brand-story-gallery summary strong{display:block;font:500 18px/1.8 var(--serif);margin:8px 0}
.brand-story-gallery summary small{display:block;color:var(--muted);line-height:1.9;font-size:12px}
.brand-story-images{padding:0 18px 18px}.brand-story-images img{width:100%;height:auto;margin:0 auto 16px}
.brand-next{padding:40px 6%;background:var(--paper);border-radius:4px}
.brand-next h2{font:500 26px/1.8 var(--serif);margin:14px 0 28px;letter-spacing:.04em}
.brand-next>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.brand-next a{border-top:1px solid var(--line);display:block;padding:20px 0 4px}
.brand-next a>span{font-size:11px;color:var(--muted);letter-spacing:.06em}
.brand-next strong{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:15px;font-weight:500;margin-top:14px}
.brand-next svg{flex:none;width:20px}
.service-help{display:flex;justify-content:space-between;align-items:center;gap:32px;margin-top:64px;padding:34px 5%;border:1px solid var(--service-line);border-radius:4px;background:var(--surface)}
.service-help h2{font:500 25px/1.8 var(--serif);letter-spacing:.03em;margin:12px 0}
.service-help p{font-size:13px;line-height:1.9;color:var(--muted);margin:0}
.service-actions{display:flex;flex-direction:column;align-items:center;gap:16px;flex:none}.service-actions .text-link{min-height:32px}
.service-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:36px}
.service-directory>a{display:flex;flex-direction:column;padding:28px;border:1px solid var(--service-line);border-radius:4px;background:var(--surface)}
.service-directory>a:hover{border-color:var(--rose);background:var(--surface)}
.service-directory h2{font:500 22px/1.6 var(--serif);margin:20px 0 12px}
.service-directory p{font-size:13px;line-height:1.9;color:var(--muted);margin:0 0 24px}
.service-directory .text-link{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:16px}
@media(max-width:900px){
  .service-policy{grid-template-columns:220px minmax(0,1fr);gap:28px;margin:0}
  .brand-story-content{gap:34px;padding-inline:3%}.brand-next{padding-inline:4%}
  .service-directory{grid-template-columns:repeat(2,minmax(0,1fr))}
  .service-help{padding:28px;gap:22px}.service-help h2{font-size:22px}
}
@media(max-width:650px){
  .service-page{padding:18px 20px 44px}.service-breadcrumb{font-size:10px;margin-bottom:14px;gap:6px}
  .service-hero{padding:18px 0 24px;gap:12px;overflow:hidden}.service-hero h1{font-size:28px;margin:10px 0 16px}
  .service-hero .service-hero-lead{font-size:19px;line-height:1.9}.service-hero p{font-size:14px}
  .service-hero-flower{position:absolute;right:-26px;top:-25px;width:92px;height:92px;opacity:.22}
  .service-hero-flower svg{width:45px;height:45px}
  .service-hero-brand{grid-template-columns:1fr;padding:0}.service-hero-brand>div{padding:28px 24px 30px}
  .service-hero-brand figure{height:285px}.service-hero-brand .button{margin-top:14px}
  .service-hero-brand figcaption{font-size:12px}
  .service-nav{gap:0;justify-content:space-between;margin-bottom:30px}
  .service-nav a{padding:12px 4px;font-size:12px;min-height:58px}
  .service-page .prose{font-size:16px;line-height:2}
  .faq-tools{padding:20px 16px;margin-bottom:16px}.faq-tools label{font-size:19px}
  .faq-item summary{padding:20px 2px;gap:16px}.faq-item summary h2{font-size:17px}
  .faq-answer{padding:0 6px 24px 2px}.service-page .table-wrap :is(th,td){padding:10px 7px;font-size:12px}
  .service-policy{grid-template-columns:minmax(0,1fr);gap:24px}
  .policy-index{position:static;padding:22px}.policy-index[open] summary{margin-bottom:12px}
  .policy-index ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}
  .policy-index li a{font-size:12px;height:100%;padding:12px 0;line-height:1.8}
  .policy-section{padding:22px 2px 26px}.policy-section h2{font-size:21px}
  .brand-story-content{grid-template-columns:1fr;gap:22px;padding:16px 4px 34px}
  .brand-story-aside h2{font-size:24px;line-height:1.8;margin-bottom:0}.brand-story-leaf{display:none}
  .brand-story-gallery summary{padding:20px 16px;gap:14px}.brand-story-gallery summary strong{font-size:17px}
  .brand-story-images{padding:0 8px 8px}.brand-story-copy>.prose{line-height:2.15}
  .brand-next{padding:28px 24px}.brand-next h2{font-size:23px;margin:14px 0 22px}
  .brand-next>div{grid-template-columns:1fr;gap:18px}.brand-next a{padding-top:18px}
  .service-help{flex-direction:column;align-items:stretch;padding:26px 22px;margin-top:36px;gap:24px}
  .service-help h2{font-size:22px}.service-actions{align-items:stretch;text-align:center;gap:14px}
  .service-directory{grid-template-columns:1fr;gap:16px;margin-top:24px}.service-directory>a{padding:24px}
  .service-page:not(.service-brand) .service-hero{padding:12px 0 18px}.service-page:not(.service-brand) .service-hero h1{margin:8px 0 12px}.service-page:not(.service-brand) .service-hero-lead{font-size:18px;line-height:1.75;margin-bottom:10px}
}
.service-link-group{margin-top:42px}.service-link-group>h2{font:500 22px/1.6 var(--serif);margin:0 0 18px}.service-link-group>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 36px}.service-link-group a{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:19px 2px;border-bottom:1px solid var(--line);font-size:15px;line-height:1.8}.service-link-group a:hover{color:var(--green)}.service-link-group svg{width:18px;flex:none}
@media(max-width:700px){.service-link-group{margin-top:30px}.service-link-group>h2{font-size:21px;margin-bottom:10px}.service-link-group>div{grid-template-columns:1fr}.service-link-group a{font-size:14px;padding:17px 2px}.service-directory>a h2{margin-top:12px}.service-directory>a .text-link{padding-top:14px}}
