/*
Theme Name: Allergy Cure Clinic (Twenty Twenty-Five child)
Theme URI: https://allergycureclinics.com/
Description: Lightweight block child theme for Allergy Cure Clinic, Surat. Teal + warm cream medical look, Anek + Mukta fonts for English, Gujarati and Hindi, conversion patterns (Book, WhatsApp, Call, sticky mobile bar), YouTube facades and an Instagram feed wrapper. No page builder.
Author: Allergy Cure Clinic web team
Template: twentytwentyfive
Version: 1.0.0
Requires at least: 6.6
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: allergycure-child
*/

/* ---------- Base ---------- */
:root{--acc-r-md:var(--wp--custom--radius--md);--acc-r-lg:var(--wp--custom--radius--lg);--acc-tap:var(--wp--custom--tap-target)}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
:where(.wp-site-blocks) :focus-visible{outline:3px solid var(--wp--preset--color--saffron);outline-offset:2px}
img{height:auto}
.wp-block-button__link{min-height:var(--acc-tap);display:inline-flex;align-items:center;justify-content:center;gap:.5rem;transition:background-color .15s,border-color .15s,transform .15s}
.wp-block-button__link:active{transform:translateY(1px)}
.wp-block-button.is-style-call .wp-block-button__link:hover{border-color:var(--wp--preset--color--teal)}
.wp-block-button.is-style-secondary .wp-block-button__link:hover{background:var(--wp--preset--color--mint)}
.wp-block-button.is-style-whatsapp .wp-block-button__link:hover{background:#0B5E32;border-color:#0B5E32}
.wp-block-button.is-style-ghost-light .wp-block-button__link:hover{background:rgba(255,255,255,.12)}
.wp-block-button .wp-block-button__link[aria-disabled="true"]{opacity:.5;pointer-events:none}

/* ---------- Icons (CSS masks; add class acc-ico--NAME to a block) ---------- */
.acc-ico--activity{--acc-i:url(assets/icons/activity.svg)}
.acc-ico--arrow-right{--acc-i:url(assets/icons/arrow-right.svg)}
.acc-ico--audio-waveform{--acc-i:url(assets/icons/audio-waveform.svg)}
.acc-ico--award{--acc-i:url(assets/icons/award.svg)}
.acc-ico--baby{--acc-i:url(assets/icons/baby.svg)}
.acc-ico--building-2{--acc-i:url(assets/icons/building-2.svg)}
.acc-ico--calendar-check{--acc-i:url(assets/icons/calendar-check.svg)}
.acc-ico--check{--acc-i:url(assets/icons/check.svg)}
.acc-ico--circle-alert{--acc-i:url(assets/icons/circle-alert.svg)}
.acc-ico--clipboard-list{--acc-i:url(assets/icons/clipboard-list.svg)}
.acc-ico--clock{--acc-i:url(assets/icons/clock.svg)}
.acc-ico--droplets{--acc-i:url(assets/icons/droplets.svg)}
.acc-ico--eye{--acc-i:url(assets/icons/eye.svg)}
.acc-ico--facebook{--acc-i:url(assets/icons/facebook.svg)}
.acc-ico--flower-2{--acc-i:url(assets/icons/flower-2.svg)}
.acc-ico--gauge{--acc-i:url(assets/icons/gauge.svg)}
.acc-ico--graduation-cap{--acc-i:url(assets/icons/graduation-cap.svg)}
.acc-ico--hand{--acc-i:url(assets/icons/hand.svg)}
.acc-ico--heart-handshake{--acc-i:url(assets/icons/heart-handshake.svg)}
.acc-ico--instagram{--acc-i:url(assets/icons/instagram.svg)}
.acc-ico--landmark{--acc-i:url(assets/icons/landmark.svg)}
.acc-ico--leaf{--acc-i:url(assets/icons/leaf.svg)}
.acc-ico--mail{--acc-i:url(assets/icons/mail.svg)}
.acc-ico--map-pin{--acc-i:url(assets/icons/map-pin.svg)}
.acc-ico--navigation{--acc-i:url(assets/icons/navigation.svg)}
.acc-ico--phone{--acc-i:url(assets/icons/phone.svg)}
.acc-ico--play{--acc-i:url(assets/icons/play.svg)}
.acc-ico--shield-check{--acc-i:url(assets/icons/shield-check.svg)}
.acc-ico--shield-plus{--acc-i:url(assets/icons/shield-plus.svg)}
.acc-ico--siren{--acc-i:url(assets/icons/siren.svg)}
.acc-ico--sparkles{--acc-i:url(assets/icons/sparkles.svg)}
.acc-ico--star{--acc-i:url(assets/icons/star.svg)}
.acc-ico--stethoscope{--acc-i:url(assets/icons/stethoscope.svg)}
.acc-ico--test-tube{--acc-i:url(assets/icons/test-tube.svg)}
.acc-ico--thermometer{--acc-i:url(assets/icons/thermometer.svg)}
.acc-ico--users{--acc-i:url(assets/icons/users.svg)}
.acc-ico--utensils{--acc-i:url(assets/icons/utensils.svg)}
.acc-ico--video{--acc-i:url(assets/icons/video.svg)}
.acc-ico--whatsapp{--acc-i:url(assets/icons/whatsapp.svg)}
.acc-ico--wheat{--acc-i:url(assets/icons/wheat.svg)}
.acc-ico--wind{--acc-i:url(assets/icons/wind.svg)}
.acc-ico--youtube{--acc-i:url(assets/icons/youtube.svg)}
.acc-i::before,.wp-block-button[class*="acc-ico--"] .wp-block-button__link::before{content:"";flex:none;display:inline-block;width:1.15em;height:1.15em;background:currentColor;-webkit-mask:var(--acc-i) center/contain no-repeat;mask:var(--acc-i) center/contain no-repeat;vertical-align:-.18em;margin-right:.45em}
.wp-block-button[class*="acc-ico--"] .wp-block-button__link::before{margin:0}
.acc-card-ico{position:relative}
.acc-card-ico::before{content:"";display:block;width:48px;height:48px;border-radius:14px;background:var(--wp--preset--color--mint);margin-bottom:.9rem}
.acc-card-ico::after{content:"";position:absolute;width:24px;height:24px;left:calc(var(--acc-pad,1.5rem) + 12px);top:calc(var(--acc-pad,1.5rem) + 12px);background:var(--wp--preset--color--teal);-webkit-mask:var(--acc-i) center/contain no-repeat;mask:var(--acc-i) center/contain no-repeat}

/* ---------- Cards ---------- */
.acc-card{--acc-pad:var(--wp--preset--spacing--50);padding:var(--acc-pad);background:#fff;border:1px solid var(--wp--preset--color--line);border-radius:var(--acc-r-lg);box-shadow:var(--wp--preset--shadow--sm);transition:box-shadow .2s,transform .2s,border-color .2s}
.acc-card > *{margin-block:0} .acc-card > * + *{margin-block-start:.5rem}
.acc-card:has(a:hover){box-shadow:var(--wp--preset--shadow--md);border-color:#CFE3E0;transform:translateY(-2px)}
.acc-card--soft{background:var(--wp--preset--color--mint);border-color:transparent;box-shadow:none}
.acc-card--saffron{background:var(--wp--preset--color--saffron-50);border-color:#F6DDB4;box-shadow:none}
.acc-card--dark{background:var(--wp--preset--color--teal-900);color:#fff;border-color:transparent}
.acc-card--dark :where(h2,h3,h4,a){color:#fff}
.acc-card .acc-more a{font-weight:600;text-decoration:none}
.acc-card .acc-more a::after{content:" \2192"}
.acc-eyebrow{font-size:var(--wp--preset--font-size--xs);font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--wp--preset--color--teal);display:flex;align-items:center;gap:.6rem}
.acc-eyebrow::before{content:"";width:22px;height:3px;border-radius:3px;background:var(--wp--preset--color--saffron)}
.acc-tag{display:inline-block;font-size:var(--wp--preset--font-size--xs);font-weight:600;padding:.15rem .6rem;border-radius:999px;background:var(--wp--preset--color--mint);color:var(--wp--preset--color--teal-900)}
.acc-tag--saffron{background:var(--wp--preset--color--saffron-50);color:#7A4A00}
.acc-micro{font-size:var(--wp--preset--font-size--xs);color:var(--wp--preset--color--muted)}
.acc-tbc{background:var(--wp--preset--color--saffron-50);color:#5C3B00;padding:0 .25rem;border-radius:4px}
.acc-disclaimer{font-size:var(--wp--preset--font-size--xs);font-style:italic;color:var(--wp--preset--color--muted)}
.acc-stars{color:#B7791F;letter-spacing:.1em}

/* ---------- Header ---------- */
.acc-topbar{font-size:var(--wp--preset--font-size--xs)}
.acc-topbar a{color:#fff}
.acc-header{position:relative;z-index:50;background:#fff;border-bottom:1px solid var(--wp--preset--color--line)} /* no backdrop-filter: it traps the fixed mobile-menu overlay */
.acc-header .wp-block-site-logo img{width:auto;max-height:52px}
.acc-header .wp-block-navigation .wp-block-navigation__submenu-container{border-radius:14px;border:1px solid var(--wp--preset--color--line)!important;box-shadow:var(--wp--preset--shadow--md);padding:.5rem;min-width:260px}
.acc-header .wp-block-navigation-item__content:hover{color:var(--wp--preset--color--teal)}
.acc-hdr-phone{line-height:1.15;font-weight:700;font-family:var(--wp--preset--font-family--heading)}
.acc-hdr-phone small{display:block;font:600 11px/1.2 var(--wp--preset--font-family--body);color:var(--wp--preset--color--muted)}
@media (max-width:1100px){.acc-hdr-phone,.acc-topbar .acc-hide-md{display:none!important}}
@media (max-width:781px){.acc-hdr-book,.acc-topbar{display:none!important}}

/* ---------- Hero / trust ---------- */
.acc-hero{background:linear-gradient(180deg,var(--wp--preset--color--mint),var(--wp--preset--color--cream))}
.acc-hero .wp-block-image img,.acc-hero .wp-block-post-featured-image img{aspect-ratio:4/3;object-fit:cover;box-shadow:var(--wp--preset--shadow--lg)}
.acc-pill{display:inline-flex;align-items:center;gap:.5rem;background:#fff;border:1px solid var(--wp--preset--color--line);border-radius:999px;padding:.3rem .8rem;font-size:var(--wp--preset--font-size--sm);box-shadow:var(--wp--preset--shadow--sm)}
.acc-trust{background:#fff;border:1px solid var(--wp--preset--color--line);border-radius:var(--acc-r-lg);box-shadow:var(--wp--preset--shadow--md)}
.acc-big{font-family:var(--wp--preset--font-family--heading);font-weight:800;font-size:var(--wp--preset--font-size--xl);color:var(--wp--preset--color--teal-900);line-height:1}
.acc-img-label{font-size:.875rem;color:var(--wp--preset--color--muted)}

/* ---------- Steps ---------- */
.acc-steps{counter-reset:acc}
.acc-step{counter-increment:acc}
.acc-step::before{content:counter(acc);display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--wp--preset--color--teal);color:#fff;font:700 1.1rem var(--wp--preset--font-family--heading);margin-bottom:.75rem}

/* ---------- Checklist / alert ---------- */
.acc-checklist{list-style:none;padding:0!important;display:grid;gap:.6rem}
.acc-checklist li{background:#fff;border:1px solid var(--wp--preset--color--line);border-radius:12px;padding:.75rem 1rem .75rem 2.75rem;position:relative}
.acc-checklist li::before{content:"";position:absolute;left:1rem;top:.95rem;width:18px;height:18px;border:2px solid var(--wp--preset--color--teal);border-radius:5px}
.acc-alert{background:var(--wp--preset--color--alert-50);border:1px solid #F7C9C4;border-left:5px solid var(--wp--preset--color--alert);border-radius:14px;color:#5A1410}
.acc-alert strong{color:var(--wp--preset--color--alert)}
.acc-note{background:var(--wp--preset--color--saffron-50);border-radius:12px}

/* ---------- FAQ (core/details) ---------- */
.wp-block-details summary{cursor:pointer;font-weight:600;color:var(--wp--preset--color--teal-900);list-style:none;display:flex;justify-content:space-between;gap:1rem}
.wp-block-details summary::-webkit-details-marker{display:none}
.wp-block-details summary::after{content:"+";font-size:1.4em;line-height:1;color:var(--wp--preset--color--teal);transition:transform .2s}
.wp-block-details[open] summary::after{transform:rotate(45deg)}
.wp-block-details[open]{border-color:#BFD9D5}

/* ---------- Reviews / YouTube facade ---------- */
.wp-block-quote.acc-quote{border-left-width:1px;position:relative;box-shadow:var(--wp--preset--shadow--sm)}
.acc-quote cite{font-style:normal;font-size:var(--wp--preset--font-size--sm);font-weight:600}
.acc-yt{margin:0}
.acc-yt__btn{position:relative;display:block;aspect-ratio:16/9;border-radius:var(--acc-r-md);overflow:hidden;background:#0A3D40}
.acc-yt__btn img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.acc-yt__btn:hover img{transform:scale(1.03)}
.acc-yt__btn::after{content:"";position:absolute;inset:50% auto auto 50%;width:64px;height:64px;margin:-32px 0 0 -32px;border-radius:50%;background:var(--wp--preset--color--red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M8 5v14l11-7z'/%3E%3C/svg%3E") 55% 50%/28px no-repeat;box-shadow:0 6px 20px rgba(0,0,0,.3)}
.acc-yt iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:var(--acc-r-md);display:block}
.acc-yt figcaption{font-weight:600;color:var(--wp--preset--color--teal-900);font-size:var(--wp--preset--font-size--sm);margin-top:.5rem}

/* Horizontal scroll rows on mobile (videos, Instagram) */
@media (max-width:781px){
 .acc-hscroll{display:grid!important;grid-auto-flow:column;grid-auto-columns:78%;overflow-x:auto;scroll-snap-type:x mandatory;gap:.75rem!important;padding-bottom:.5rem;margin-inline:calc(var(--wp--style--root--padding-left) * -1);padding-inline:var(--wp--style--root--padding-left)}
 .acc-hscroll > *{scroll-snap-align:start;margin:0!important}
}

/* ---------- Instagram feed wrapper ---------- */
.acc-ig__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}
.acc-ig__grid--4{grid-template-columns:repeat(4,1fr)}
.acc-ig__tile{aspect-ratio:1;border-radius:var(--acc-r-md);background:repeating-linear-gradient(45deg,#FFF4E2 0 14px,#FBEBD0 14px 28px);border:2px dashed #E9C48A;display:grid;place-items:center;font-size:var(--wp--preset--font-size--xs);color:#7A4A00;text-align:center;padding:.5rem}
@media (max-width:781px){.acc-ig__grid{grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:62%;overflow-x:auto;scroll-snap-type:x mandatory}.acc-ig__grid > *{scroll-snap-align:start}}
/* Plugin output (Smash Balloon #sb_instagram / Spotlight .spotlight-instagram-feed) inherits brand radius */
.acc-ig #sb_instagram .sbi_photo,.acc-ig .spotlight-instagram-feed img{border-radius:var(--acc-r-md)}
.acc-ig #sb_instagram{padding:0!important}
.acc-ig #sb_instagram .sbi_follow_btn a,.acc-ig #sb_instagram #sbi_load .sbi_load_btn{border-radius:999px!important;font-weight:600}
.acc-ig-avatar img{border-radius:50%;padding:3px;background:conic-gradient(from 200deg,#F2A23A,#C8342C,#B13A8F,#F2A23A)}
.wp-block-button.is-style-call.acc-ico--instagram .wp-block-button__link::before{background:#C13584}

/* ---------- CTA band ---------- */
.acc-cta-band{border-radius:var(--wp--custom--radius--xl);background:linear-gradient(135deg,var(--wp--preset--color--teal-900),var(--wp--preset--color--teal));color:#fff}
.acc-cta-band :where(h2,h3){color:#fff}
.acc-cta-band .acc-micro{color:#D8ECE9}

/* ---------- Condition / doctor templates ---------- */
@media (min-width:1000px){.acc-aside{position:sticky;top:110px}}
.acc-creds .acc-tag{font-size:var(--wp--preset--font-size--sm);background:#fff;border:1px solid var(--wp--preset--color--line)}

/* ---------- Footer ---------- */
.acc-footer{color:#E6F0EF}
.acc-footer a{color:#fff;text-decoration:none}
.acc-footer a:hover{text-decoration:underline}
.acc-footer h4,.acc-footer .wp-block-heading{color:#fff;font-size:var(--wp--preset--font-size--sm);letter-spacing:.08em;text-transform:uppercase}
.acc-footer .wp-block-site-logo img{width:auto;max-height:64px;background:#fff;border-radius:10px;padding:6px}
.acc-footer .acc-list{list-style:none;padding:0;display:grid;gap:.4rem}

/* ---------- Sticky mobile action bar (CSS only) ---------- */
.acc-mbar{display:none}
@media (max-width:781px){
 body{padding-bottom:calc(80px + env(safe-area-inset-bottom))} /* bar is ~73px + safe area */
 .acc-mbar{display:block!important;position:fixed;left:0;right:0;bottom:0;z-index:60;margin:0!important;padding:.5rem .75rem calc(.5rem + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--wp--preset--color--line);box-shadow:0 -6px 20px rgba(10,61,64,.1)}
 .acc-mbar .wp-block-button{margin:0;width:100%}
 .acc-mbar .wp-block-button__link{width:100%;flex-direction:column;gap:.15rem;padding:.4rem!important;font-size:.875rem;min-height:56px;border-radius:14px}
}
@media print{.acc-mbar,.acc-header{display:none!important}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.acc-trust .acc-card-ico{--acc-pad:0px}
.acc-stack{flex-direction:column;align-items:stretch}
.acc-stack .wp-block-button,.acc-stack .wp-block-button__link{width:100%}
.acc-hero .wp-block-post-title{margin-top:.5rem}
.acc-crumbs a{color:var(--wp--preset--color--muted)}
.wp-block-post-content > .alignfull:first-child{margin-top:0}
.wp-site-blocks > *{margin-block-start:0}
.acc-hdr-phone a{text-decoration:none;color:var(--wp--preset--color--teal-900)}
.acc-card{position:relative}
.acc-card :where(h3,h4) a{text-decoration:none;color:inherit}
.acc-card :where(h3,h4) a::after{content:"";position:absolute;inset:0;border-radius:inherit}
.acc-card :where(h3,h4) a:hover{color:var(--wp--preset--color--teal)}
.acc-card .wp-block-buttons,.acc-card .acc-more{position:relative;z-index:1}
.wp-block-post-content > .alignfull{margin-block:0}
.wp-block-post-content > .alignwide:not(:first-child){margin-block-start:var(--wp--preset--spacing--60)}
@media (max-width:781px){
 .acc-mbar .wp-block-buttons{display:grid!important;grid-template-columns:1fr 1fr 1.25fr;gap:.5rem}
 .acc-trust{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
.acc-logo-fallback img{height:auto;display:block}
@media (max-width:781px){.acc-header .wp-block-navigation{margin-left:auto;order:3}.acc-header .wp-block-site-logo img{width:96px!important}}
@media (max-width:781px){.acc-footer .wp-block-columns{display:grid!important;grid-template-columns:1fr 1fr;gap:1.5rem 1rem}.acc-footer .wp-block-columns > .wp-block-column:first-child,.acc-footer .wp-block-columns > .wp-block-column:last-child{grid-column:1/-1}}
/* ===== Filter chips (Videos, Reviews) ===== */
.acc-filterbar{position:sticky;top:calc(var(--wp-admin--admin-bar--height,0px) + 64px);z-index:5;background:#fff;padding:.75rem 0;margin-block:var(--wp--preset--spacing--50) var(--wp--preset--spacing--40)!important;border-bottom:1px solid var(--wp--preset--color--line)}
.acc-filterbar > *{margin-block:0!important}
.acc-filterbar__label{font-size:var(--wp--preset--font-size--xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--wp--preset--color--muted)}
.acc-filterbar__help:empty{display:none}
.acc-chips{display:flex;gap:.5rem;overflow-x:auto;scroll-snap-type:x proximity;padding:.4rem 0 .5rem!important;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent)}
.acc-chips::-webkit-scrollbar{display:none}
.acc-chips a{flex:none;scroll-snap-align:start;display:inline-flex;align-items:center;min-height:44px;padding:0 1rem;border-radius:999px;border:1.5px solid var(--wp--preset--color--line);background:#fff;color:var(--wp--preset--color--teal-900);font-weight:600;font-size:.9375rem;text-decoration:none;white-space:nowrap}
.acc-chips a:hover{border-color:var(--wp--preset--color--teal)}
.acc-chips a[aria-pressed="true"]{background:var(--wp--preset--color--teal-900);border-color:var(--wp--preset--color--teal-900);color:#fff}
.acc-chips a:focus-visible{outline:3px solid var(--wp--preset--color--saffron);outline-offset:2px}
@media (min-width:1000px){.acc-chips{flex-wrap:wrap;overflow:visible;-webkit-mask-image:none}}
.acc-fgroup{padding-top:var(--wp--preset--spacing--50);scroll-margin-top:200px}
.acc-fgroup[hidden]{display:none!important}
.acc-fgroup__head{border-bottom:2px solid var(--wp--preset--color--mint);padding-bottom:.5rem;margin-bottom:1rem}
.acc-fgroup__head > *{margin:0!important}
.acc-count{color:var(--wp--preset--color--muted);font-weight:600}
.acc-vcard{padding:.6rem .6rem 1rem!important}
.acc-vcard > :not(.wp-block-embed){margin-inline:.4rem!important}
.acc-vlabel{font-size:.875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--wp--preset--color--teal);margin:.25rem 0 .5rem!important;order:2}
.acc-vlabel--story{color:#9A5B00}
.acc-vcard .wp-block-embed figcaption{font:700 1.0625rem/1.3 var(--wp--preset--font-family--heading);color:var(--wp--preset--color--teal-900);text-align:left;margin:.5rem .4rem .25rem}
.acc-vmeta{font-size:.875rem;color:var(--wp--preset--color--muted)}
/* Review card */
.acc-rcard{display:flex;flex-direction:column;gap:.6rem}
.acc-rcard > *{margin:0!important}
.acc-rcard__head{gap:.65rem!important}
.acc-avatar{flex:none;width:40px;height:40px;border-radius:50%;background:var(--wp--preset--color--mint);color:var(--wp--preset--color--teal-900);display:grid;place-items:center;font-weight:700;margin:0!important}
.acc-rcard__who{margin:0!important;line-height:1.25;color:var(--wp--preset--color--teal-900)}
.acc-rcard__date{font-size:.875rem;color:var(--wp--preset--color--muted)}
.acc-src{margin:0 0 0 auto!important;font-size:.875rem;font-weight:700;padding:.2rem .55rem;border-radius:999px;background:var(--wp--preset--color--mint);color:var(--wp--preset--color--teal-900)}
.acc-src--google{background:#EEF3FE;color:#1A4FB4}
.acc-rcard__stars{letter-spacing:2px}
/* ===== Trustindex (Widgets for Google Reviews) restyle ===== */
.acc-ti{border:1px solid var(--wp--preset--color--line);border-radius:28px;background:var(--wp--preset--color--cream);overflow:hidden}
.acc-ti__bar{gap:.6rem 1rem!important;padding:1rem 1.5rem;background:#fff;border-bottom:1px solid var(--wp--preset--color--line)}
.acc-ti__bar > *{margin:0!important}
.acc-ti__bar .wp-block-buttons{margin-left:auto!important}
.acc-ti__g{font-size:.875rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--wp--preset--color--muted)}
.acc-ti__num strong{font:800 1.6rem/1 var(--wp--preset--font-family--heading);color:var(--wp--preset--color--teal-900)}
.acc-ti__body{padding:1.5rem}
.acc-ti .ti-widget,.acc-ti .ti-widget *{font-family:var(--wp--preset--font-family--body)!important}
.acc-ti .ti-widget .ti-review-item>.ti-inner,.acc-ti .ti-widget .ti-review-item .ti-inner{background:#fff!important;border:1px solid var(--wp--preset--color--line)!important;border-radius:20px!important;box-shadow:0 1px 2px rgba(10,61,64,.06),0 2px 6px rgba(10,61,64,.05)!important}
.acc-ti .ti-widget .ti-name{color:var(--wp--preset--color--teal-900)!important;font-weight:700!important}
.acc-ti .ti-widget .ti-date{color:var(--wp--preset--color--muted)!important}
.acc-ti .ti-widget .ti-review-content,.acc-ti .ti-widget .ti-review-text-container{color:var(--wp--preset--color--ink)!important;font-size:1rem!important;line-height:1.6!important}
.acc-ti .ti-widget .ti-stars .ti-star,.acc-ti .ti-widget .ti-star.f{color:var(--wp--preset--color--saffron)!important;fill:var(--wp--preset--color--saffron)!important}
.acc-ti .ti-widget .ti-read-more span,.acc-ti .ti-widget a{color:var(--wp--preset--color--teal)!important}
.acc-ti .ti-widget .ti-controls .ti-next,.acc-ti .ti-widget .ti-controls .ti-prev{background:var(--wp--preset--color--teal-900)!important;border-radius:50%!important}
.acc-ti .ti-widget .ti-footer,.acc-ti .ti-widget .ti-header{display:none!important} /* our own bar shows rating + CTA */
.acc-ti__placeholder{margin:0;padding:2.5rem 1rem;text-align:center;font-size:.875rem;color:#5C3B00;background:#FFF4E2;border:1px dashed #E9C48A;border-radius:14px}
.acc-photo-pending img{width:100%;height:auto;border-radius:20px;display:block}

/* ===== ACC responsive fixes v2 (23 Oct 2026) =====
   Merge of the developer's "ACC responsive fixes v1" (deployed in Global Styles post 264) and the designer's live-audit fixes.
   Ship this ONLY in the theme. When this style.css is deployed, empty Global Styles 264 in the same step.
   Breakpoints follow WP core: 600px (nav overlay), 782px (columns stack / admin bar / bottom bar), 1024px (desktop nav).
   The header backdrop-filter that trapped the mobile overlay is removed at the source (.acc-header rule above). */

/* 1. Sticky header [designer]. .acc-header could not stick inside a parent of the same height, so the
      template-part wrapper sticks instead. On desktop the 44px hours bar scrolls away and the 77px main row stays. */
:root{--acc-hdr-h:77px;--acc-topbar-h:0px}
.wp-site-blocks > header.wp-block-template-part{position:sticky;top:0;z-index:100}
.wp-site-blocks > header.wp-block-template-part:has(.is-menu-open){z-index:100001}
@media (min-width:600px){.admin-bar .wp-site-blocks > header.wp-block-template-part{top:var(--wp-admin--admin-bar--height,0px)}}
@media (min-width:782px){
 :root{--acc-topbar-h:44px}
 .acc-topbar{box-sizing:border-box;height:var(--acc-topbar-h);padding-block:0!important;display:flex;flex-direction:column;justify-content:center;overflow:hidden} /* fixed height so the sticky offset is exact (39px with a mouse, 44px social targets on touch) */
 .wp-site-blocks > header.wp-block-template-part{top:calc(var(--acc-topbar-h) * -1)}
 .admin-bar .wp-site-blocks > header.wp-block-template-part{top:calc(var(--wp-admin--admin-bar--height,0px) - var(--acc-topbar-h))}
}
.acc-filterbar{top:calc(var(--wp-admin--admin-bar--height,0px) + var(--acc-hdr-h))}
@media (max-width:599px){.acc-filterbar{top:var(--acc-hdr-h)}}
:where(.acc-fgroup,[id]){scroll-margin-top:calc(var(--acc-hdr-h) + 80px)}

/* 2. Mobile menu overlay: full screen, scrolls internally, 44-48px rows [developer] */
.acc-header:has(.wp-block-navigation__responsive-container.is-menu-open){z-index:100001}
.acc-header .wp-block-navigation__responsive-container.is-menu-open{box-sizing:border-box;position:fixed;inset:0;width:auto;height:100vh;height:100dvh;max-height:none;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:max(1rem,env(safe-area-inset-top)) 1.25rem calc(2rem + env(safe-area-inset-bottom));z-index:100000}
.acc-header .wp-block-navigation .is-menu-open .wp-block-navigation__responsive-container-content{padding-top:3rem;gap:0!important;align-items:stretch!important}
.acc-header .wp-block-navigation .is-menu-open .wp-block-navigation__container{gap:0!important;width:auto;align-self:stretch;align-items:stretch!important} /* width:auto: 100% plus core's content padding overran the right gutter by 12px */
.acc-header .wp-block-navigation .is-menu-open .wp-block-navigation-item{width:100%;align-items:stretch!important}
.acc-header .wp-block-navigation .is-menu-open .wp-block-navigation-item__content{box-sizing:border-box;display:flex!important;align-items:center;min-height:48px;padding:.375rem .25rem!important;font-size:1.0625rem;width:100%;border-bottom:1px solid var(--wp--preset--color--line)}
.acc-header .wp-block-navigation .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content{font-weight:700;font-family:var(--wp--preset--font-family--heading);color:var(--wp--preset--color--teal-900)}
.acc-header .wp-block-navigation .is-menu-open .wp-block-navigation__submenu-container{box-sizing:border-box;border:0!important;box-shadow:none!important;border-radius:0!important;min-width:0!important;width:100%!important;padding:0 0 .5rem 1rem!important;gap:0!important;background:transparent!important}
.acc-header .wp-block-navigation .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content{font-size:1rem;min-height:44px}
.acc-header .wp-block-navigation__responsive-container-open,.acc-header .wp-block-navigation__responsive-container-close{padding:10px;margin:-10px;box-sizing:content-box}
.acc-header .wp-block-navigation .is-menu-open .wp-block-navigation__responsive-container-close{top:max(.75rem,env(safe-area-inset-top));right:1rem;margin:0;z-index:2;background:#fff;border-radius:999px}
html.has-modal-open,html.has-modal-open body{overflow:hidden!important;overscroll-behavior:none}
html.has-modal-open .acc-mbar,body:has(.acc-header .is-menu-open) .acc-mbar{display:none!important}

/* 3. Focus ring only for keyboard focus (theme.json :focus outline showed on every tap) [developer] */
:where(.wp-site-blocks) :focus:not(:focus-visible){outline:none!important}
@media (hover:none) and (pointer:coarse){
 .acc-header .is-menu-open a:focus,.acc-header .wp-block-navigation .is-menu-open button:focus{outline:none!important}
 .acc-header .is-menu-open a:focus-visible{background:var(--wp--preset--color--mint)}
}

/* 4. Overlay menu up to 1023px (core switches to the inline menu at 600px; at 768 the hidden dropdowns
      pushed scrollWidth to 887px and browsers zoomed out) [developer] */
@media (min-width:600px) and (max-width:1023px){
 .acc-header .wp-block-navigation__responsive-container-open:not(.always-shown){display:flex}
 .acc-header .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open){display:none}
 .acc-header .wp-block-navigation{margin-left:.75rem;order:3}
}
/* desktop dropdowns: keep the last two submenus inside the viewport */
.acc-header .wp-block-navigation__container > .wp-block-navigation-item:nth-last-child(-n+2) > .wp-block-navigation__submenu-container{left:auto;right:0}
.acc-header .wp-block-navigation__container > .wp-block-navigation-item:nth-last-child(-n+2) .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container{left:auto;right:100%}

/* 5. Bottom bar: body padding is 80px + safe area (in the .acc-mbar block above) [developer] */

/* 6. Layout at tablet widths */
/* condition pages: Book card stacks under the content below 1000px [developer] */
@media (max-width:999px){
 .wp-block-columns:has(> .wp-block-column > .acc-aside){flex-wrap:wrap!important}
 .wp-block-columns:has(> .wp-block-column > .acc-aside) > .wp-block-column{flex-basis:100%!important}
}
/* footer: 2 columns at 782-1023px [developer] */
@media (min-width:782px) and (max-width:1023px){
 .acc-footer .wp-block-columns{display:grid!important;grid-template-columns:1fr 1fr;gap:2rem 1.5rem}
 .acc-footer .wp-block-columns > .wp-block-column{flex-basis:auto!important}
}
/* 4-step journey as 2x2 instead of 3 + 1 orphan [designer] */
@media (min-width:600px) and (max-width:1023px){
 .acc-steps{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* 7. Touch targets >= 44px on touch screens [developer + designer's .acc-more / FAQ padding] */
@media (pointer:coarse){
 .acc-footer .wp-block-navigation-item__content,.acc-footer .acc-list a,.acc-footer .wp-block-navigation a{display:inline-flex;align-items:center;min-height:44px}
 .acc-footer .acc-list{gap:0}
 .acc-footer .wp-block-navigation__container{row-gap:0!important}
 .wp-block-social-links .wp-social-link a,.wp-block-social-links .wp-block-social-link-anchor{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box}
 .acc-topbar .wp-block-social-links{gap:0!important}
 .wp-block-details summary{min-height:44px;align-items:center}
 .acc-more a{display:inline-flex;align-items:center;min-height:44px}
 .acc-header .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content{min-height:44px;display:inline-flex;align-items:center}
 .acc-header .wp-block-navigation__submenu-icon{position:relative}
 .acc-header .wp-block-navigation__submenu-icon::after{content:"";position:absolute;inset:-18px -10px}
}

/* 8. Small print >= 14px on phones (xs preset is now 0.875rem in theme.json; these catch the rest) [designer] */
@media (max-width:781px){
 .acc-crumbs,.acc-filterbar__label{font-size:.875rem!important}
 .wp-block-table td,.wp-block-table th{font-size:1rem}
}

/* 9. Safety net: nothing may widen the page (clip, not hidden, so sticky still works) [designer] */
html,body{overflow-x:clip}
.wp-block-image img,.wp-block-embed iframe,video{max-width:100%}
/* ===== /ACC responsive fixes v2 ===== */
