/* Larger navigation and questionnaire text, including touch-sized choices. */
.brand small{font-size:12px;font-weight:600;letter-spacing:.045em;line-height:1.5;color:var(--olive)}
.brand small span{display:inline-block}
.brand strong{font-size:23px}
.site-header nav{gap:24px}
.site-header nav>a:not(.button){font-size:15px}
.site-header nav>.button{font-size:14px;padding:12px 17px;gap:15px}
.header-inner{gap:25px}
.survey-dialog{font-size:16px}
.dialog-top strong{font-size:18px}
.dialog-top div>span{font-size:14px}
.survey-layout{grid-template-columns:245px minmax(0,1fr)}
.survey-sidebar>p{font-size:12px;letter-spacing:.05em}
.survey-sidebar .sidebar-note{font-size:13px;line-height:1.75;overflow-wrap:anywhere}
.step-nav{font-size:15px;padding:11px 8px}
.step-nav>span{font-size:13px;width:28px;height:28px}
.survey-progress>span{font-size:14px}
.survey-scroll h2{font-size:40px}
.survey-scroll .step-intro,.survey-note{font-size:16px;line-height:1.75}
.field-group legend,.field-label,.frequency-grid label{font-size:16px;line-height:1.6}
.field-hint,.empty-search{font-size:14px}
.field-group input[type=text],.field-group input[type=email],.field-group input[type=number],.field-group textarea,.field-group select,.product-search,.frequency-grid select{font-size:16px;min-height:48px}
.field-group input::placeholder,.field-group textarea::placeholder{font-size:15px}
.choice,.choice-grid.compact .choice,.exclusion-group .choice{font-size:16px;line-height:1.55;min-height:48px;padding:12px;gap:10px;overflow-wrap:anywhere}
.choice input{width:19px;height:19px;margin-top:3px}
.exclusion-group>summary{font-size:17px;padding:17px 15px}
.exclusion-group>summary>span:first-child{font-size:17px;font-weight:600;color:var(--ink)}
.exclusion-group>summary>span:last-child{font-size:13px}
.survey-actions .button,.survey-actions .text-link,.reset-actions .button{font-size:16px}
.survey-actions .button{padding:14px 22px}
.summary-section h3{font-size:29px}
.summary-section header button,.summary-reset{font-size:14px}
.summary-section dt{font-size:15px}
.summary-section dd{font-size:16px}
.summary-section .unanswered{font-size:14px}
.survey-emphasis{font-weight:700;color:var(--ink);background:var(--lime);border-radius:5px;padding:0 .13em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.survey-send-box{margin-top:32px;border:1px solid #b8c3a9;border-radius:8px;padding:24px;background:#f2f4ea}
.survey-send-box h3{font-family:Georgia,serif;font-size:30px;margin-bottom:12px}
.survey-send-box>p{font-size:16px;overflow-wrap:anywhere}
.survey-consent{margin-top:20px;background:var(--paper)}
.survey-send-status:not(:empty){margin-top:18px;font-size:16px;line-height:1.7}
.survey-send-status.is-error{color:#903a25}
.survey-send-status.is-success{color:#284d30;font-weight:600}
.survey-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.survey-disclaimer{font-size:13px;line-height:1.7;overflow-wrap:anywhere}
.price-list{border-top:1px solid var(--line)}
.price-row{display:grid;grid-template-columns:minmax(0,1fr) 160px;gap:35px;padding:30px 0;border-bottom:1px solid var(--line);align-items:center}
.price-meta{font-size:13px;font-weight:600;color:var(--olive);margin-bottom:9px}
.price-row h3{font-family:Georgia,serif;font-size:31px;margin-bottom:10px}
.price-row p:not(.price-meta){font-size:15px;line-height:1.75;max-width:700px}
.price-amount{justify-self:end;white-space:nowrap;color:var(--olive)}
.price-amount strong{font-family:Georgia,serif;font-size:52px;font-weight:400;line-height:1}
.price-amount>span{font-size:20px}
.pricing-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:30px}
.pricing-bottom>p{font-size:14px}
@media(max-width:1100px){
  .header-inner{min-height:84px;gap:15px}
  .brand strong{font-size:23px}.brand small{font-size:12px}
  .menu-toggle{display:flex;align-items:center;gap:10px;padding:10px 0 10px 10px;border:0;background:none;font-size:16px}
  .menu-toggle i{display:block;width:20px;height:11px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);transition:transform .2s}
  .menu-toggle[aria-expanded=true] i{transform:rotate(-35deg)}
  .site-header nav{display:none;position:absolute;top:84px;left:0;right:0;background:var(--cream);padding:20px 32px 28px;border-bottom:1px solid var(--line);box-shadow:0 10px 15px #23382908;align-items:stretch}
  .site-header nav.open{display:flex;flex-direction:column;gap:8px}
  .site-header nav>a:not(.button){font-size:18px;padding:10px 0}
  .site-header nav>.button{font-size:16px;padding:15px;margin-top:6px;justify-content:space-between}
}
@media(max-width:850px){
  .survey-layout{grid-template-columns:205px minmax(0,1fr)}
  .step-nav{font-size:14px;gap:8px}
  .field-grid.three{grid-template-columns:1fr 1fr}
  .exclusion-group .choice-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  html{scroll-padding-top:100px}
  .brand{gap:11px}.brand strong{font-size:22px}.brand small{font-size:12px;letter-spacing:.025em}
  .brand small span{display:block}.brand-mark{font-size:44px}
  .header-inner{min-height:90px}.site-header nav{top:90px;padding-inline:20px}
  .dialog-top{height:84px;padding:12px 16px;gap:10px}
  .dialog-top strong{font-size:17px}.dialog-top div>span{font-size:12px}
  .dialog-top .mini-brand{font-size:32px}.icon-button{width:38px;height:38px;flex-shrink:0}
  .survey-layout{height:calc(100% - 84px)}
  .survey-scroll{padding:22px 20px 28px}
  .survey-scroll h2{font-size:35px}
  .survey-scroll .step-intro{font-size:16px}
  .field-grid,.field-grid.three,.frequency-grid{grid-template-columns:1fr}
  .frequency-grid .field-group{display:block;margin-bottom:22px}
  .frequency-grid label{font-size:16px;margin-bottom:8px}
  .frequency-grid select{font-size:16px;padding:12px}
  .choice-grid,.exclusion-group .choice-grid{grid-template-columns:1fr}
  .exclusion-group>summary{gap:10px;padding-inline:12px}
  .exclusion-group>summary>span:first-child{font-size:16px}
  .exclusion-group>summary>span:last-child{font-size:12px;gap:8px;flex-shrink:0}
  .exclusion-group>summary>span:last-child>span{max-width:85px}
  .survey-actions{padding:13px 16px;gap:12px}
  .survey-actions .button{font-size:15px;padding:13px 15px;max-width:70%;white-space:normal}
  .survey-actions .text-link{font-size:14px;flex-shrink:0}
  .survey-send-box{padding:18px 15px}.survey-consent{padding:12px}
  .survey-disclaimer{font-size:13px}
  .price-row{grid-template-columns:minmax(0,1fr) 92px;gap:16px;padding:25px 0;align-items:start}
  .price-row h3{font-size:27px}.price-meta{font-size:12px}.price-row p:not(.price-meta){font-size:14px}
  .price-amount{padding-top:26px}.price-amount strong{font-size:37px}.price-amount>span{font-size:17px}
  .pricing-bottom{align-items:start;flex-direction:column;gap:22px}
}
@media(max-width:370px){
  .brand strong{font-size:19px}.brand small{font-size:11.5px}.brand{gap:9px}.brand-mark{font-size:38px}
  .menu-toggle{font-size:14px;gap:7px;padding-left:4px}.header-inner{gap:9px}
  .price-row{grid-template-columns:minmax(0,1fr) 78px;gap:12px}.price-row h3{font-size:24px}.price-amount strong{font-size:32px}
  .dialog-top .mini-brand{display:none}.survey-actions .button{font-size:14px}
}
/* Client update: packages, reviews and two consultation locations. */
.free-plan{display:flex;align-items:center;gap:26px;margin-top:40px;padding:30px;background:var(--lime);border-radius:8px}
.free-plan-flower{font:44px/1 Arial,sans-serif;color:var(--olive);flex-shrink:0}
.free-plan>div{flex:1;min-width:0}.free-plan .eyebrow{margin-bottom:9px}
.free-plan h3{font:400 32px/1.2 Georgia,serif;margin-bottom:9px}
.free-plan p:not(.eyebrow){font-size:15px;line-height:1.7}
.free-plan .button{flex-shrink:0;font-size:14px}
@media(max-width:700px){.free-plan{flex-wrap:wrap;gap:18px;padding:24px}.free-plan-flower{font-size:34px}.free-plan h3{font-size:28px}.free-plan>div{flex-basis:calc(100% - 52px)}.free-plan .button{max-width:100%;white-space:normal;font-size:14px;gap:20px}}
.photo-note>span:first-child{font-family:Arial,sans-serif;color:var(--olive)}
.hero .eyebrow{font-size:11px;letter-spacing:.1em}
.price-row .price-detail{margin-top:14px;padding-left:16px;border-left:2px solid #b1bea0;color:var(--olive)}
.price-amount>.price-before{display:block;white-space:normal;font-family:Inter,Arial,sans-serif;font-size:13px;line-height:1.6;margin-bottom:10px;color:var(--muted)}
.price-before s{text-decoration-thickness:1px}
.package-heading{margin:66px 0 30px;max-width:790px}
.package-heading .eyebrow{margin-bottom:16px}
.package-heading h3{font-family:Georgia,serif;font-size:42px;margin-bottom:16px}
.package-heading>p:last-child{font-size:15px;line-height:1.85}
.package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.package-card{background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:30px 25px;display:flex;flex-direction:column;align-items:start}
.package-flower{font-size:30px;line-height:1;color:var(--olive);margin-bottom:25px}
.package-card h4{font:400 30px/1.2 Georgia,serif;letter-spacing:-.025em;margin:0 0 26px;min-height:72px}
.package-card .price-amount{justify-self:start}
.package-card ul{margin:24px 0 30px;padding-left:18px;color:var(--muted);font-size:14px;line-height:1.8}
.package-card li+li{margin-top:8px}
.package-card .text-link{margin-top:auto;font-size:13px}
.combined-visit{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:36px;background:#e9ecdf;border:1px solid #d4dcc6;border-radius:8px;padding:38px;margin-top:30px}
.combined-visit h3{font:400 40px/1.1 Georgia,serif;letter-spacing:-.025em;margin-bottom:18px}
.combined-visit .eyebrow{margin-bottom:16px}
.combined-visit p:not(.eyebrow){font-size:15px;line-height:1.8;max-width:660px}
.combined-parts{display:flex;align-items:center;gap:22px;margin-top:24px;font-size:13px;color:var(--olive)}
.combined-parts>span{max-width:200px}.combined-parts strong{display:block;font-size:18px;font-weight:600;margin-top:4px}
.combined-action{display:flex;flex-direction:column;align-items:end;gap:26px}.combined-action .button{font-size:13px;white-space:normal;text-align:center}
.reviews{padding-bottom:0}.reviews .section-heading{align-items:center}.reviews .section-heading>p{max-width:360px}
.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.review-card{padding:32px;border:1px solid var(--line);border-radius:8px;background:var(--paper);display:flex;flex-direction:column;align-items:start}
.review-source{font-size:12px;font-weight:600;color:var(--olive);letter-spacing:.03em}
.review-card blockquote{font:400 27px/1.5 Georgia,serif;margin:24px 0;color:var(--ink)}
.review-card cite{font-style:normal;font-size:14px;font-weight:600}.review-card small{display:block;font-size:12px;color:var(--muted);margin-top:5px}
.review-card .text-link{font-size:12px;margin-top:22px}
.review-links{display:flex;flex-wrap:wrap;gap:20px 32px;margin-top:24px}.review-links .text-link{font-size:13px}
.faq-booking ul{padding-left:20px;font-size:14px;line-height:1.85;color:var(--muted)}.faq-booking li+li{margin-top:12px}
.faq-booking a{overflow-wrap:anywhere}.booking-certificate{margin-top:24px;min-height:170px}
.contact-details .contact-email strong{font-size:clamp(19px,2.3vw,29px);overflow-wrap:anywhere}
.contact-details .contact-phone strong{font-size:34px}
.contact-inner>div>.contact-phone-note{font-size:12px;margin-top:12px}
.booking-panel{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:50px;align-items:start;padding:40px;background:var(--paper);border:1px solid var(--line);border-radius:8px;margin-top:18px}
.booking-panel h3{font:400 36px/1.2 Georgia,serif;letter-spacing:-.03em;margin-bottom:20px}
.booking-panel p:not(.eyebrow){font-size:15px;line-height:1.85;margin-bottom:22px}.booking-panel .text-link{font-size:13px}
.booking-widget{min-width:0;min-height:360px}.booking-panel iframe,.booking-certificate iframe{max-width:100%}
.zl-url{display:inline-block;font-size:16px;text-decoration:underline;color:var(--olive)}
@media(max-width:1000px){.package-grid{gap:14px}.package-card{padding:26px 20px}.package-card h4{font-size:27px}.combined-visit{grid-template-columns:1fr}.combined-action{flex-direction:row;justify-content:space-between;align-items:center}.booking-panel{gap:30px;padding:28px}}
@media(max-width:700px){
 .hero .eyebrow{font-size:9px;letter-spacing:.055em}.price-amount>.price-before{font-size:12px}
 .package-heading{margin-top:46px}.package-heading h3{font-size:34px}.package-grid{grid-template-columns:1fr;gap:18px}
 .package-card{padding:28px}.package-card h4{min-height:0;font-size:30px;margin-bottom:24px}.package-flower{margin-bottom:20px}
 .package-card .price-amount{padding-top:0}.package-card .price-amount strong{font-size:46px}
 .combined-visit{padding:26px;gap:26px}.combined-visit h3{font-size:35px}.combined-parts{gap:16px;font-size:12px}
 .combined-action{flex-wrap:wrap;gap:22px;align-items:center}.combined-action .price-amount{padding:0}.combined-action .price-amount strong{font-size:46px}
 .review-grid{grid-template-columns:1fr}.review-card{padding:26px}.review-card blockquote{font-size:26px}.review-links{gap:18px}
 .contact-details .contact-phone strong{font-size:30px}.contact-details .contact-email strong{font-size:22px}
 .booking-panel{grid-template-columns:minmax(0,1fr);padding:24px 16px;gap:24px;margin-top:0}.booking-panel h3{font-size:32px}
 .booking-widget{min-height:360px}.booking-certificate{min-height:170px}
}
