@font-face{font-family:Vazirmatn;src:url('/fonts/Vazirmatn.woff2') format('woff2');font-weight:100 900;font-display:swap}
body{font-family:Vazirmatn,sans-serif;background:#f5f6f5;color:#28372e;margin:0;line-height:1.8}button,input,select{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a{text-decoration:none;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #64996b;outline-offset:4px}button:disabled{cursor:not-allowed;opacity:.55}.app-shell{max-width:1600px;margin:auto;display:grid;grid-template-columns:245px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100dvh;padding:38px 23px;background:#fff;border-left:1px solid #eceeeb;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:13px;font-size:29px;font-weight:800;line-height:1.2}.brand-symbol{display:grid;place-items:center;width:47px;height:47px;border-radius:16px;background:#c5edb1;color:#254b31}.brand-symbol svg{width:28px;height:28px}.brand small{font-size:10px;letter-spacing:3px;display:block;margin-top:6px;font-weight:500}.sidebar-label{font-size:12px;color:#89918b;margin:29px 0 18px}.sidebar nav{display:grid;gap:9px}.nav-item{display:flex;align-items:center;gap:12px;min-height:51px;padding:10px 12px;border-radius:14px;font-size:14px;color:#707a72}.nav-item svg{width:20px;height:20px}.nav-item.active{background:#eaf5e5;color:#294c33;font-weight:700}.sidebar-help{margin-top:auto;background:#f3f6f1;border:1px solid #e9eee5;border-radius:21px;padding:19px}.sidebar-help>svg{width:21px;margin-bottom:9px}.sidebar-help strong{display:block;font-size:15px}.sidebar-help p{font-size:12px;color:#7a847b;margin:6px 0 12px}.sidebar-help a{display:block;font-size:19px;font-weight:700}.sidebar-foot{color:#939a93;font-size:12px;text-align:center;margin-top:23px}.main-view{padding:0 45px;min-width:0;max-width:1180px;width:100%;margin:auto}.topbar{height:97px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e7eae5}.topbar-caption{font-size:14px;color:#838c83}.outline-button{display:flex;align-items:center;gap:9px;font-size:13px;border:1px solid #dce2da;background:transparent;border-radius:11px;padding:10px 16px;color:#506551}.mobile-brand{display:none}.page-heading{display:flex;align-items:center;justify-content:space-between;margin:35px 0 26px}.eyebrow{font-size:12px;color:#789271;font-weight:600}.page-heading h1{font-size:36px;letter-spacing:-1.2px;line-height:1.5;font-weight:800;margin:5px 0 8px}.heading-dot{color:#83bd70;padding-right:3px}.page-heading p{font-size:14px;color:#858b85;margin:0}.heading-icon{width:59px;height:59px;display:grid;place-items:center;background:#e9eee7;border-radius:19px;color:#6b8865;transform:rotate(-8deg)}.heading-icon svg{width:27px;height:27px}.booking-banner{position:relative;border-radius:24px;background:#d5efc4;padding:27px 29px;display:flex;align-items:center;gap:22px;overflow:hidden}.banner-icon{display:grid;place-items:center;width:70px;height:78px;border:1px solid #b5d49e;border-radius:22px;flex-shrink:0;background:#e3f4d8;transform:rotate(5deg)}.banner-icon svg{width:32px;height:32px;color:#405e35}.banner-copy h2{font-size:24px;font-weight:750;margin:3px 0 4px;letter-spacing:-.5px}.banner-copy p{font-size:13px;color:#677c5e;margin:0}.booking-banner .eyebrow{color:#6c8660}.dark-button{background:#253e2a;color:#fff;border:0;border-radius:13px;padding:13px 19px;display:inline-flex;align-items:center;justify-content:center;gap:12px;font-size:14px;white-space:nowrap;font-weight:550}.booking-banner .dark-button{margin-right:auto}.search-box{height:58px;display:flex;align-items:center;background:#fff;border:1px solid #e6eae3;border-radius:16px;margin-top:28px;padding:0 19px;gap:13px;color:#9ba497}.search-box>svg{width:21px;height:21px}.search-box input{background:transparent;border:0;outline:none!important;min-width:0;width:100%;font-size:14px;color:#263d2d;height:100%}.search-box input::placeholder{color:#9da39b}.search-box kbd{font:inherit;font-size:11px;background:#f4f6f2;border-radius:7px;padding:2px 9px;color:#9ca494;white-space:nowrap}.category-strip{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:18px 0 8px}.category-chip{border:1px solid #e4e8e0;border-radius:11px;background:transparent;font-size:13px;padding:8px 16px;white-space:nowrap;color:#7f887e}.category-chip.selected{background:#293f2d;border-color:#293f2d;color:#fff}.section-title{display:flex;justify-content:space-between;align-items:center;margin:23px 0 17px}.section-title h2{font-size:18px;font-weight:750;margin:0}.section-title span{font-size:12px;color:#91998d}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.service-card{display:flex;flex-direction:column;border-radius:23px;background:#fff;border:1px solid #e6eae3;padding:23px;transition:transform .2s,border-color .2s}.service-card:hover{transform:translateY(-3px);border-color:#b8d3a9}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.service-icon{width:49px;height:49px;border-radius:16px;display:grid;place-items:center;background:#e9f3e2;color:#759365}.service-icon svg{width:23px;height:23px}.tone-1{background:#f5ede6;color:#aa8671}.tone-2{background:#e8eef5;color:#839cba}.tone-3{background:#edeaf4;color:#9d8cb3}.subtle-tag{font-size:11px;background:#f5f6f3;color:#8a9383;padding:4px 9px;border-radius:7px}.service-card h3{font-size:19px;margin:0 0 5px;font-weight:750}.service-subtitle{font-size:13px;color:#8c9389;margin:0;line-height:1.9}.price-block{margin:23px 0 19px;min-height:68px;margin-top:auto;padding-top:23px}.price-block del{display:block;color:#a6aaa1;font-size:13px;text-decoration-color:#b2b8ad}.price-block>div{display:flex;align-items:baseline;gap:7px}.price-block strong{font-size:28px;letter-spacing:-.7px;font-weight:700}.price-block span{font-size:12px;color:#969e90}.card-action{display:flex;justify-content:space-between;align-items:center;border:0;border-top:1px solid #edf0e9;padding:15px 0 0;font-size:13px;color:#5c7455;background:none;text-align:right;width:100%}.main-footer{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#9ca395;gap:15px;padding:28px 0 30px}.mobile-dock{display:none}
@media(min-width:1400px){.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.main-view{padding:0 50px}.service-card h3{font-size:18px}.price-block strong{font-size:26px}}
@media(max-width:1050px){.app-shell{grid-template-columns:215px minmax(0,1fr)}.sidebar{padding:30px 15px}.main-view{padding:0 27px}.booking-banner{padding:24px 22px;gap:16px}.banner-icon{display:none}.banner-copy h2{font-size:22px}}
@media(max-width:760px){.app-shell{display:block}.sidebar{display:none}.main-view{padding:0 20px}.topbar{height:87px;border:0}.topbar-caption{display:none}.mobile-brand{display:flex;font-size:26px;gap:9px}.brand-symbol{width:40px;height:40px;border-radius:14px}.brand-symbol svg{width:24px;height:24px}.brand small{font-size:8px;letter-spacing:2px;margin-top:4px}.outline-button{padding:9px 11px;font-size:12px;border-radius:12px}.page-heading{margin:14px 0 21px}.page-heading h1{font-size:29px;letter-spacing:-.8px;margin:4px 0 7px}.page-heading p{font-size:13px;max-width:285px;line-height:1.9}.heading-icon{display:none}.booking-banner{border-radius:23px;display:grid;grid-template-columns:1fr auto;padding:21px 19px;gap:14px}.banner-copy h2{font-size:21px}.banner-copy p{font-size:12px;max-width:175px;line-height:1.8}.banner-copy .eyebrow{font-size:10px}.booking-banner .dark-button{font-size:12px;padding:13px 11px;border-radius:12px;gap:7px}.booking-banner .dark-button svg{width:16px}.search-box{margin-top:22px;height:55px;border-radius:15px;padding:0 16px}.search-box kbd{display:none}.category-strip{margin-left:-20px;padding-left:20px;gap:7px}.category-chip{font-size:12px;padding:9px 14px}.section-title{margin:22px 0 16px}.section-title h2{font-size:17px}.section-title span{font-size:11px}.service-grid{grid-template-columns:1fr;gap:15px}.service-card{border-radius:23px;padding:21px}.card-top{margin-bottom:12px}.service-card h3{font-size:19px}.service-icon{width:45px;height:45px}.service-subtitle{font-size:13px}.price-block{padding-top:17px;margin-bottom:16px}.price-block strong{font-size:28px}.card-action{padding-top:14px;min-height:42px}.main-footer{display:block;text-align:center;padding-bottom:100px}.main-footer span{display:block}.mobile-dock{position:fixed;bottom:0;left:0;right:0;background:#fffefbfa;border-top:1px solid #e4e9df;backdrop-filter:blur(15px);display:flex;justify-content:space-around;padding:12px 8px calc(12px + env(safe-area-inset-bottom));z-index:30}.mobile-dock button{background:none;border:0;display:grid;justify-items:center;gap:4px;font-size:11px;color:#909a88;min-width:78px}.mobile-dock button.active{color:#3f6432}.mobile-dock svg{width:21px;height:21px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

*{box-sizing:border-box}button.nav-item{background:transparent;border:0;width:100%;text-align:right}button.nav-item.active{background:#eaf5e5}.sidebar-help>span>svg{margin-bottom:10px}button svg,.outline-button svg{flex-shrink:0}.dark-button:hover{background:#36583c}.category-chip:hover{border-color:#9fb696}.unavailable{opacity:.7}.price-state{font-size:19px;font-weight:650;color:#53674c;padding:8px 0}.unavailable .price-state{color:#92968d}.filter-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding-top:12px}.filter-row select{max-width:230px;min-height:40px;background:transparent;color:#74816d;border:1px solid #dfe5d9;border-radius:11px;padding:5px 12px;font-size:13px}.filter-row button{background:transparent;border:1px solid #e0e6da;color:#7c8874;border-radius:10px;padding:7px 12px;font-size:12px}.filter-row button.selected{background:#e0efd5;color:#45623b;border-color:#c3d5b4}.load-more{display:block;margin:23px auto 10px;padding:12px 25px;border:1px solid #d8e2d1;background:#edf3e8;color:#4c6641;border-radius:12px;font-size:14px}.data-date{text-align:center;font-size:11px;color:#9aa493;margin:23px 0 0}.empty-state{grid-column:1/-1;text-align:center;background:#fff;border:1px solid #e1e8db;border-radius:22px;padding:40px 20px;color:#779168}.empty-state svg{width:34px;height:34px}.empty-state h3{font-size:20px}.empty-state p{font-size:14px;color:#8c9488}.empty-state .outline-button{display:inline-flex}.care-card .service-icon{margin-bottom:17px}.care-card .card-action{margin-top:23px}.wide{width:100%;min-height:51px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}.dialog-open{overflow:hidden}dialog{background:#fafbf8;color:#293c2b;border:0;border-radius:27px;padding:32px;width:min(560px,calc(100% - 32px));max-height:calc(100dvh - 48px);overflow:auto;box-shadow:0 25px 100px #1b321e33;margin:auto}dialog::backdrop{background:#1c2d236e;backdrop-filter:blur(5px)}dialog h2{font-size:25px;font-weight:750;margin:15px 0 10px;line-height:1.7}dialog>.service-icon{margin-bottom:13px}dialog>.eyebrow{display:block}.dialog-close{position:absolute;left:20px;top:20px;background:#edf1e8;border:0;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;color:#7d8d74}.dialog-lead{font-size:14px;color:#8a9481;line-height:2.1;margin:0 0 23px}.booking-service{padding:15px 18px;border-radius:17px;background:#ecf3e5;border:1px solid #dfead7;margin-bottom:21px}.booking-service span{display:block;font-size:11px;color:#8a9a7c}.booking-service strong{display:block;font-size:16px;font-weight:650}.booking-service small{display:block;font-size:12px;color:#788d6a}.field-label{display:block;font-size:13px;font-weight:550;margin:14px 0 7px}.form-input{border:1px solid #dfe5d7;background:#fff;width:100%;min-height:50px;border-radius:13px;padding:10px 13px;color:#33492d;font-size:16px}.phone-input{direction:ltr;text-align:right}.consent{display:flex;align-items:flex-start;gap:9px;font-size:12px;line-height:2;color:#7b8871;margin:20px 0}.consent input{margin-top:5px;accent-color:#5c7b47;flex-shrink:0;width:17px;height:17px}.form-footnote{text-align:center;color:#9ba391;font-size:11px;margin:12px 0 0}.honey{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-error{border:1px solid #edc5b6;background:#fff0e9;color:#99553a;font-size:13px;padding:11px;border-radius:10px}.success-mark{width:72px;height:72px;background:#c9edb3;border-radius:23px;display:grid;place-items:center;margin:8px 0 24px;color:#4c753a}.success-mark svg{width:38px;height:38px}.tracking-code{display:flex;align-items:center;justify-content:space-between;background:#edf3e8;border:1px solid #dfe6d8;border-radius:16px;margin:25px 0;padding:16px;font-size:13px}.tracking-code strong{font-size:17px;letter-spacing:2px}.detail-price{margin:20px 0}.detail-note{font-size:12px;line-height:2;color:#8b9582;background:#eef2e9;border-radius:13px;padding:12px 14px;margin:20px 0 10px}.source-link{display:block;text-align:center;font-size:12px;color:#7d9470;margin:15px 0;text-decoration:underline;text-underline-offset:4px}.poster-list{display:grid;gap:17px;overflow:hidden}.poster-link{display:block;border:1px solid #e2e8dc;border-radius:15px;overflow:hidden;background:white}.poster-link img{display:block;width:100%;height:auto}.poster-link span{display:block;padding:9px;font-size:11px;color:#839276;text-align:center}#toast{position:fixed;bottom:100px;left:50%;transform:translateX(-50%);background:#293f2d;color:#fff;border-radius:13px;padding:13px 23px;z-index:99;font-size:13px}body:has(dialog[open]) .mobile-dock{z-index:0}#care-view{padding-top:13px}.nav-item svg{display:block}.mobile-dock button.active span{background:#e8f4df;padding:5px 15px;border-radius:12px}.mobile-dock button span{padding:5px 15px}.mobile-dock{padding-top:7px}.service-card .service-subtitle{min-height:25px}.app-shell{grid-template-columns:245px minmax(0,1fr)}.outline-button span{display:flex}
@media(max-width:760px){.app-shell{display:block}.sidebar{display:none}dialog{padding:29px 22px;width:100%;max-height:92dvh;border-radius:27px 27px 0 0;position:fixed;inset:auto 0 0;margin:0;max-width:100%}dialog h2{font-size:23px}.dialog-close{left:20px;top:20px}.filter-row select{font-size:12px;max-width:200px}.service-card .price-block{padding-top:14px}.booking-banner{gap:10px}.banner-copy p{font-size:12px}.outline-button{font-size:12px}.service-card .subtle-tag{font-size:12px}.service-subtitle{color:#75816d}.eyebrow{font-size:12px}.banner-copy .eyebrow{font-size:12px}.main-footer,.data-date{font-size:12px}.service-card .card-action{font-size:14px}.category-chip{font-size:14px}.category-strip{padding-bottom:12px}.form-footnote{font-size:12px}}
@media(min-width:761px) and (max-width:1050px){.app-shell{grid-template-columns:215px minmax(0,1fr)}}

/* Translucent surfaces and a compact, legible price list. */
body{background:radial-gradient(ellipse at 15% 5%,#d4ebdd 0,transparent 47%),radial-gradient(ellipse at 90% 65%,#dfedc7 0,transparent 45%),#f3f5ef;background-attachment:fixed;color:#253c34}.sidebar{background:#ffffff48;backdrop-filter:blur(24px);border-left:1px solid #fff9}.topbar{border-color:#ffffff80}.main-view{max-width:1220px;width:100%;margin:auto}.booking-banner{background:linear-gradient(115deg,#d3ebbe90,#f2ffe499);border:1px solid #fff;box-shadow:0 12px 40px #48663708;backdrop-filter:blur(22px)}.search-box,.service-card,.category-tile,.entry-card,.product-row{background:#ffffff75;border:1px solid #ffffffdc;box-shadow:0 12px 35px #284b3806;backdrop-filter:blur(24px)}.category-chip,.filter-row select,.filter-row button{background:#ffffff55}.eyebrow{color:#6a8270}.page-heading p,.service-subtitle{color:#6c7c71}.welcome-note{padding:25px 0 34px}.pill{font-size:10px;letter-spacing:3px;color:#607765;background:#ffffff65;border:1px solid #fff;padding:9px 13px;border-radius:30px;display:inline-block}.welcome-note h2{font-size:52px;letter-spacing:-1.9px;line-height:1.55;margin:21px 0 15px;font-weight:750}.welcome-note em{font-style:normal;color:#698862}.welcome-note p{max-width:440px;font-size:15px;line-height:2.1;color:#78857a}.entry-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:45px}.entry-card{text-align:right;border-radius:30px;padding:30px;position:relative;display:flex;flex-direction:column;gap:10px;color:#294534;min-height:265px;transition:transform .25s,background .25s}.entry-card:hover,.category-tile:hover{transform:translateY(-4px);background:#ffffffa8}.entry-icon{width:61px;height:61px;border-radius:20px;background:#d6edc699;border:1px solid #fff;display:grid;place-items:center;margin-bottom:13px;color:#5c8053}.entry-icon svg{width:30px;height:30px}.care-entry .entry-icon{background:#d9e9f6a1;color:#5b7a90}.entry-kicker{font-size:11px;color:#8a9589}.entry-card strong{font-size:26px;font-weight:700}.entry-card>span:not([class]){font-size:12px;color:#78887c}.entry-arrow{position:absolute;left:25px;bottom:30px;width:41px;height:41px;display:grid;place-items:center;border:1px solid #fff;background:#ffffff78;border-radius:50%}.category-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:14px 0 25px}.category-tile{display:flex;flex-direction:column;text-align:right;align-items:flex-start;gap:10px;border-radius:26px;padding:27px;color:#294534;transition:transform .25s,background .25s}.category-tile strong{font-size:21px}.category-tile>span:not(.entry-icon){font-size:13px;color:#7d897c}.category-tile small{display:flex;align-items:center;justify-content:space-between;width:100%;color:#758b70;font-size:12px;margin-top:13px}.back-button{padding:8px 0;background:none;border:0;color:#6e866b;font-size:12px;margin-bottom:6px}.product-list{display:grid;gap:12px}.product-row{border-radius:23px;overflow:hidden;transition:background .3s,box-shadow .3s}.product-row.expanded{background:#ffffffae;box-shadow:0 14px 45px #3959380c}.row-summary{display:grid;grid-template-columns:74px minmax(0,1fr) auto 22px;align-items:center;gap:18px;width:100%;text-align:right;border:0;background:none;padding:19px;color:inherit}.product-thumb{width:74px;height:80px;background:#fff;border:1px solid #fff;border-radius:17px;display:grid;place-items:center;overflow:hidden}.product-thumb img{width:100%;height:100%;object-fit:contain;padding:7px}.photo-pending{display:grid;place-items:center;gap:5px;color:#a2b59b}.photo-pending small{font-size:9px;font-weight:400}.product-name{display:grid;gap:6px}.product-name>strong{font-size:17px;font-weight:650}.product-name>small{font-size:11px;color:#7f8e7c;line-height:1.8}.price-pair{display:flex;gap:23px;align-items:center}.amount{display:grid;grid-template-columns:auto auto;column-gap:5px;row-gap:2px;align-items:baseline}.amount small{grid-column:1/-1;font-size:9px;font-weight:500;opacity:.85}.amount strong{font-size:22px;font-weight:750;font-variant-numeric:tabular-nums;letter-spacing:-.5px}.amount>span{font-size:9px;font-weight:450}.before{color:#c3434d}.after{color:#268653}.regular{color:#36593a}.expand-icon{color:#8f9b89;transition:transform .4s}.expanded .expand-icon{transform:rotate(-90deg)}.accordion{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s cubic-bezier(.22,1,.36,1),opacity .3s;opacity:0}.expanded .accordion{grid-template-rows:1fr;opacity:1}.accordion-inner{min-height:0;overflow:hidden}.expanded-layout{display:grid;grid-template-columns:200px 1fr;gap:27px;margin:0 22px;padding:24px 0 27px;border-top:1px solid #dce6d6}.product-portrait{background:#fff;border:1px solid #fff;border-radius:22px;min-height:220px;display:grid;place-items:center;overflow:hidden;align-self:start}.product-portrait img{width:100%;height:240px;object-fit:contain;padding:20px;transform:scale(.9);transition:transform .65s cubic-bezier(.22,1,.36,1)}.expanded .product-portrait img{transform:scale(1)}.product-description h3{font-size:22px;margin:8px 0}.product-description p{font-size:13px;line-height:2;color:#788672}.origin-pill{display:inline-block;font-size:11px;background:#edf4e6;border-radius:20px;padding:5px 11px;color:#728669}.expanded-price{margin:20px 0}.product-description .dark-button{font-size:12px;min-height:45px}.product-description .source-link{text-align:right;font-size:10px;color:#89967d}.row-price .price-state{font-size:13px}.mobile-dock{background:#ffffffe0;backdrop-filter:blur(24px);border-top:1px solid #fff}.sidebar-help{background:#ffffff65;border:1px solid #fff}.category-strip{display:none}dialog{background:#f9fcf5f5;border:1px solid #fff;backdrop-filter:blur(25px)}.price-block{border:0}.detail-price .amount strong{font-size:26px}
@media(max-width:760px){.main-view{padding:0 17px}.page-heading h1{font-size:28px}.page-heading p{max-width:100%}.welcome-note{padding:12px 1px 20px}.welcome-note h2{font-size:39px;line-height:1.65;margin-top:15px}.welcome-note p{font-size:13px;max-width:315px}.entry-grid{gap:12px;margin-bottom:25px}.entry-card{padding:20px 17px;min-height:245px;border-radius:25px;gap:8px}.entry-icon{width:51px;height:51px;border-radius:16px}.entry-card strong{font-size:22px}.entry-card>span:not([class]){font-size:10px;line-height:1.9;max-width:125px}.entry-kicker{font-size:9px}.entry-arrow{width:32px;height:32px;left:16px;bottom:17px}.category-grid{gap:12px;padding-top:7px}.category-tile{padding:21px 17px;border-radius:24px;gap:8px}.category-tile strong{font-size:18px}.category-tile>span:not(.entry-icon){font-size:11px;line-height:1.9}.category-tile small{font-size:10px}.booking-banner{padding:17px;gap:10px}.banner-copy h2{font-size:18px}.banner-copy p{font-size:10px}.row-summary{grid-template-columns:60px minmax(0,1fr) 15px;column-gap:12px;row-gap:13px;padding:15px}.product-thumb{width:60px;height:69px;border-radius:14px;grid-row:1/3}.product-name>strong{font-size:15px;line-height:1.8}.product-name>small{font-size:10px}.expand-icon{grid-column:3;grid-row:1}.row-price{grid-column:2/4;grid-row:2}.price-pair{gap:22px;justify-content:space-between;padding-left:4px}.amount strong{font-size:21px;letter-spacing:-.5px}.amount small{font-size:9px}.amount>span{font-size:8px}.product-row{border-radius:22px}.expanded-layout{grid-template-columns:1fr;margin:0 16px;gap:18px;padding:20px 0}.product-portrait{width:100%;min-height:180px;max-height:220px}.product-portrait img{height:210px;padding:20px}.product-description h3{font-size:19px}.product-description .dark-button{width:100%}.mobile-dock button{min-width:65px;font-size:10px}.mobile-dock button span{padding:5px 10px}.topbar .outline-button{font-size:10px}.sidebar{display:none}}
@media(max-width:350px){.amount strong{font-size:18px}.price-pair{gap:10px}.row-summary{column-gap:8px}.entry-card strong{font-size:19px}}
@media(max-width:760px){.product-thumb{grid-row:1}.row-price{grid-column:1/-1;grid-row:2}.price-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0}.amount{display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-width:0}.amount strong{font-size:clamp(18px,5.2vw,21px);white-space:nowrap}.amount>span{font-size:9px}.row-summary{row-gap:13px}.row-price .amount{padding:8px 9px;border-radius:12px}.row-price .before{background:#fbe9e950}.row-price .after{background:#e5f2e550}.row-price .regular{grid-column:1/-1}.expanded-price .amount strong{font-size:21px}}

/* Minimal home: clinic logo, two choices, and the requested footer. */
.main-view{display:flex;flex-direction:column;min-height:100dvh}.topbar{flex-shrink:0;height:124px;border-bottom:0}.header-logo{display:flex;align-items:center}.avan-logo{display:block;object-fit:contain;width:103px;height:auto}.logo-brand{justify-content:center;margin:0 0 32px}.logo-brand .avan-logo{width:107px}.sidebar nav{margin-top:16px}#home-view{padding:32px 0}.entry-grid{margin:0}.entry-card{min-height:220px;justify-content:center}.entry-card strong{margin-bottom:8px}.entry-icon{margin-bottom:16px}.main-footer{justify-content:center;text-align:center;margin-top:auto;color:#6d806c;font-size:13px;padding:35px 0}.page-heading{margin:10px 0 20px}.page-heading h1{font-size:27px}#services-view{padding-top:12px}.search-box{margin-top:10px}
@media(max-width:760px){.main-view{min-height:100dvh;padding-bottom:78px}.topbar{height:127px}.avan-logo{width:98px}.header-logo{padding-right:3px}#home-view{padding:22px 0 30px}.entry-card{min-height:222px;align-items:flex-start;justify-content:center}.entry-grid{margin-bottom:0}.main-footer{padding:30px 4px 19px;font-size:12px;line-height:2}.page-heading{margin:6px 0 20px}.page-heading h1{font-size:24px}.entry-arrow{bottom:20px}}

.home-intro{margin:0 0 27px}.home-intro h1{font-size:29px;font-weight:750;line-height:1.7;margin:0 0 7px;color:#294534}.home-intro p{font-size:13px;line-height:2;color:#74856f;margin:0}@media(max-width:760px){.home-intro{margin-bottom:23px}.home-intro h1{font-size:25px}.home-intro p{font-size:12px}}

.tests-entry .entry-icon{background:#f3e5cd9e;color:#957549}.survey-entry .entry-icon{background:#e6dff399;color:#817098}.entry-card strong{line-height:1.7}@media(max-width:760px){.entry-card{min-height:190px}.entry-grid{gap:12px}.tests-entry strong{font-size:18px}.entry-card .entry-icon{margin-bottom:11px}}

.breadcrumbs{margin:0 0 16px;padding:7px 11px;border:1px solid #ffffffba;background:#ffffff55;border-radius:15px;backdrop-filter:blur(20px)}.breadcrumbs ol{list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:3px;margin:0;padding:0}.breadcrumbs li{display:flex;align-items:center;gap:3px;min-width:0}.breadcrumbs button{border:0;background:transparent;padding:8px 9px;min-height:40px;border-radius:9px;color:#778b70;font-size:12px;white-space:nowrap}.breadcrumbs button:hover{background:#e6f0df;color:#355d35}.breadcrumb-current{font-size:12px;font-weight:650;color:#35593c;padding:8px 9px}.breadcrumb-separator{font-size:20px;color:#a0ae97;padding:0 1px}@media(max-width:760px){.breadcrumbs{margin:0 0 14px;padding:4px 5px;border-radius:13px}.breadcrumbs button,.breadcrumb-current{font-size:11px;padding:7px}.breadcrumb-separator{font-size:18px}}

.discount-tag{display:inline-flex;align-items:center;justify-content:center;justify-self:start;align-self:flex-start;width:fit-content;background:#fbe5e5;color:#c3434d;border:1px solid #efc0c3;border-radius:8px;padding:3px 8px;font-size:11px;line-height:1.8;font-weight:650;white-space:nowrap}.expanded-price>.discount-tag{margin-bottom:12px}@media(max-width:760px){.discount-tag{font-size:10px;padding:2px 7px}}

.row-summary{position:relative}.row-summary>.discount-tag{position:absolute;top:12px;right:19px;margin:0}.has-discount>.row-summary{padding-top:47px}@media(max-width:760px){.row-summary>.discount-tag{right:15px;top:11px}.has-discount>.row-summary{padding-top:42px}}

.row-summary>.discount-tag{right:auto;left:19px}@media(max-width:760px){.row-summary>.discount-tag{right:auto;left:15px}}
/* Paper price tickets inspired by the supplied Avan price poster. */
.product-row{background:linear-gradient(125deg,#f8fff7bf,#e5efdf99);border-color:#fff;box-shadow:0 10px 30px #24452a09}
.row-summary{grid-template-columns:78px minmax(0,1fr) minmax(270px,340px) 20px;gap:18px;padding:22px}
.product-name>strong{font-size:19px;line-height:1.7;color:#214b30}.product-name>small{color:#67836e}
.product-thumb{width:78px;height:86px;background:#fff;border-radius:17px}
.price-ticket{position:relative;display:flex;flex-direction:column;align-items:stretch;background:linear-gradient(135deg,#fff,#f5f6f3);padding:20px 20px 22px;border-radius:3px;color:#285c37;filter:drop-shadow(0 5px 8px #24492c0a);mask:radial-gradient(6px at 50% 100%,transparent 97%,#000 100%) 0 0/20px 100%;border-top:3px solid #477c50}
.ticket-discount{border-top-color:#e62737}.price-ticket .price-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0;align-items:start}
.price-ticket .amount{display:flex;flex-direction:column;align-items:center;gap:0;min-width:0;text-align:center;background:none;padding:0;border-radius:0}
.price-ticket .amount.before{border-left:1px solid #d9dfd7;color:#df2738}.price-ticket .amount.after,.price-ticket .amount.regular{color:#237344}
.price-ticket .amount strong{font-size:42px;line-height:1.5;font-weight:800;letter-spacing:-1px;white-space:nowrap;text-decoration:none}
.price-ticket .amount small{font-size:10px;line-height:1.8;font-weight:600;opacity:1}.price-ticket .amount>span{font-size:11px;font-weight:650;line-height:1.8}.ticket-single .amount{grid-column:1/-1}

.ticket-barcode{display:block;width:118px;max-width:65%;height:17px;margin:7px auto 0;background:repeating-linear-gradient(90deg,#536157 0 2px,transparent 2px 4px,#536157 4px 5px,transparent 5px 9px,#536157 9px 15px,transparent 15px 17px,#536157 17px 20px,transparent 20px 24px,#536157 24px 25px,transparent 25px 28px);opacity:.65}
.expanded-price{max-width:370px}.expanded-price .price-ticket .amount strong,.detail-price .price-ticket .amount strong{font-size:44px}
.row-summary>.discount-tag{background:#fff;color:#e62737;border:1.5px solid #e62737;border-radius:30px;padding:1px 9px;font-weight:750;top:14px;left:22px;right:auto}
.has-discount>.row-summary{padding-top:47px}
@media(max-width:760px){
 .row-summary{grid-template-columns:64px minmax(0,1fr) 18px;gap:14px;padding:18px;row-gap:17px}
 .product-thumb{width:64px;height:72px;grid-row:1}.product-name>strong{font-size:17px}.product-name>small{font-size:11px}
 .row-price{grid-column:1/-1;grid-row:2;display:block;width:100%;max-width:100%}.price-ticket{padding:17px 15px 21px}
 .price-ticket .amount strong,.expanded-price .price-ticket .amount strong{font-size:clamp(33px,10.5vw,44px)}
 .price-ticket .amount small{font-size:10px}.price-ticket .amount>span{font-size:11px}.price-ticket .amount.before,.price-ticket .amount.after{background:none}
 .has-discount>.row-summary{padding-top:45px}.row-summary>.discount-tag{top:12px;left:18px;font-size:11px}.expanded-price{max-width:none}.product-row{border-radius:24px}
.ticket-barcode{height:16px}
}
@media(prefers-reduced-motion:reduce){.accordion,.product-portrait img,.expand-icon{transition:none}}

/* Each price owns its barcode and numeric amount. */
.price-ticket .amount>.ticket-barcode{flex:none;width:108px;max-width:90%;height:17px;margin:10px auto 7px;color:#808080;background:repeating-linear-gradient(90deg,currentColor 0 2px,transparent 2px 4px,currentColor 4px 5px,transparent 5px 9px,currentColor 9px 15px,transparent 15px 17px,currentColor 17px 20px,transparent 20px 24px,currentColor 24px 25px,transparent 25px 28px);opacity:.8}
.price-ticket .amount>.ticket-numeric{font-size:12px;font-weight:700;line-height:1.9;white-space:nowrap;font-variant-numeric:tabular-nums}
.price-ticket .amount.before strong{text-decoration:line-through;text-decoration-color:currentColor;text-decoration-thickness:2px}
@media(max-width:350px){.price-ticket .amount>.ticket-numeric{font-size:10px}}

/* Larger transparent product images, with written-out ticket amounts. */
.row-summary{grid-template-columns:110px minmax(0,1fr) minmax(290px,360px) 20px}
.product-thumb{width:110px;height:120px;background:transparent;border:0;border-radius:0;overflow:visible}
.product-thumb img{padding:0;object-fit:contain}
.product-portrait{background:transparent;border:0;min-height:280px;max-height:none;overflow:visible}
.product-portrait img{height:320px;padding:0;object-fit:contain}
.price-ticket .amount>.ticket-numeric{font-size:11px;white-space:normal;line-height:1.9;max-width:100%;padding:0 3px;min-height:42px;display:flex;align-items:flex-start;justify-content:center}
@media(max-width:760px){
 .row-summary{grid-template-columns:98px minmax(0,1fr) 18px}
 .product-thumb{width:98px;height:110px}.product-portrait{min-height:250px;max-height:none}.product-portrait img{height:290px;max-width:100%;padding:0}
 .price-ticket .amount>.ticket-numeric{font-size:11px}
}

.product-facts{display:grid;grid-template-columns:1fr 1fr;border:1px solid #688367;margin:22px 0 18px;border-radius:2px;min-height:94px;color:#2e5438;background:#ffffff22}
.fact-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:14px 10px;text-align:center;min-width:0}.fact-cell+.fact-cell{border-right:1px solid #68836766}
.fact-cell>span{font-size:11px;color:#69826c}.fact-cell>strong{font-size:14px;font-weight:600;line-height:1.8}.fact-cell>.approval-pending{font-size:12px;color:#748875}.approval-mark{color:#2e5438;display:inline-flex;align-items:center;justify-content:center;min-width:64px;min-height:36px}.approval-logo{width:58px;height:36px}
@media(max-width:760px){.product-facts{min-height:94px}.fact-cell>strong{font-size:13px}}

.price-ticket .amount>.ticket-numeric{margin-top:4px;min-height:42px;align-items:center}.price-ticket .amount>.ticket-barcode{margin:7px auto 4px}

/* Floating navigation with space below for comfortable mobile use. */
@media(max-width:760px){
 .mobile-dock{left:16px;right:16px;bottom:calc(22px + env(safe-area-inset-bottom));padding:10px 6px;border:1px solid #ffffffd9;border-radius:25px;background:#ffffffbd;backdrop-filter:blur(26px);box-shadow:0 12px 35px #25493220,0 2px 8px #25493208;gap:0}
 .mobile-dock button{min-width:0;flex:1;min-height:49px;padding:0 2px;gap:4px}.mobile-dock button span{padding:4px 6px}.mobile-dock button.active span{padding:4px 9px}
 .main-view{padding-bottom:calc(120px + env(safe-area-inset-bottom))}
}

/* The expanded portrait replaces the thumbnail while details are open. */
.product-row.expanded .product-thumb{visibility:hidden}

/* Expanded title takes the thumbnail's place. */
.product-row.expanded .row-summary>.product-thumb{display:none}
.product-row.expanded .row-summary>.product-name{grid-column:1/3;grid-row:1}
.product-row.expanded .product-name>strong{font-size:22px}
@media(max-width:760px){.product-row.expanded .product-name>strong{font-size:20px}}

/* Animate the thumbnail track so the heading slides into its place. */
.row-summary{transition:grid-template-columns .55s cubic-bezier(.22,1,.36,1)}
.product-thumb{transform-origin:right center;opacity:1;transform:scale(1);visibility:visible;transition:opacity .22s ease,transform .5s cubic-bezier(.22,1,.36,1),visibility 0s}
.product-name{transform:translateX(0);transition:transform .55s cubic-bezier(.22,1,.36,1)}
.product-name>strong{transition:font-size .55s cubic-bezier(.22,1,.36,1)}
.product-row.expanded .row-summary{grid-template-columns:0px minmax(0,1fr) minmax(290px,360px) 20px}
.product-row.expanded .row-summary>.product-thumb{display:grid;visibility:hidden;opacity:0;transform:scale(.82);pointer-events:none;transition:opacity .18s ease,transform .5s cubic-bezier(.22,1,.36,1),visibility 0s .5s}
.product-row.expanded .row-summary>.product-name{grid-column:2;grid-row:1;transform:translateX(18px)}
@media(max-width:760px){.product-row.expanded .row-summary{grid-template-columns:0px minmax(0,1fr) 18px}.product-row.expanded .row-summary>.product-name{transform:translateX(14px)}}
@media(prefers-reduced-motion:reduce){.row-summary,.product-thumb,.product-name,.product-name>strong,.product-row.expanded .row-summary>.product-thumb{transition:none}}

/* Compact product information box. */
.product-facts{min-height:64px;margin:14px 0 10px;border-radius:8px}
.fact-cell{padding:8px 10px;gap:3px}.fact-cell>span{font-size:10px;line-height:1.6}.fact-cell>strong{font-size:12px;line-height:1.7}.fact-cell>.approval-pending{font-size:11px}.approval-mark{min-height:26px;min-width:44px}.approval-logo{width:42px;height:26px}
@media(max-width:760px){.product-facts{min-height:64px}.fact-cell>strong{font-size:12px}}

.product-portrait .image-note{display:block;text-align:center;color:#7b847e;font-size:11px;line-height:1.8;margin-top:10px}

/* Reveal the photographed product's palette across the whole open card. */
.product-row{position:relative;isolation:isolate;overflow:hidden}
.product-row::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:inherit;background:linear-gradient(135deg,color-mix(in srgb,var(--product-color-a,#7da684) 30%,transparent),color-mix(in srgb,var(--product-color-b,#b9cca2) 22%,transparent) 62%,color-mix(in srgb,var(--product-color-a,#7da684) 12%,transparent));opacity:0;transition:opacity .65s cubic-bezier(.22,1,.36,1)}
.product-row.expanded::before{opacity:1}
.product-row.expanded .product-description p,.product-row.expanded .image-note,.product-row.expanded .source-link{color:#4e6156}
.product-row.expanded .product-facts{background:#ffffff65}
@media(prefers-reduced-motion:reduce){.product-row::before{transition:none}}

/* Lighter page with compact, centered price and information boxes. */
body{background:radial-gradient(ellipse at 15% 5%,#e8f4ed 0,transparent 42%),radial-gradient(ellipse at 90% 65%,#f1f6e9 0,transparent 42%),#fdfefd;background-attachment:fixed}
.product-facts{width:calc(100% - 32px);max-width:520px;margin:14px auto 10px;box-sizing:border-box}
.row-price .price-ticket{width:100%;max-width:none;margin:0;padding:20px 20px 22px;box-sizing:border-box}
.row-price .price-ticket .amount strong{font-size:42px}
.row-price .price-ticket .amount>.ticket-numeric{min-height:42px;margin-top:4px}
.row-price .price-ticket .amount>.ticket-barcode{height:17px;margin:7px auto 4px}
@media(max-width:760px){.row-price .price-ticket{padding:17px 15px 21px}.row-price .price-ticket .amount strong{font-size:clamp(33px,10.5vw,44px)}}

/* Give closed service cards a gentle green contrast against the white page. */
.product-row{transition:background-color .65s cubic-bezier(.22,1,.36,1),border-color .65s ease}
.product-row:not(.expanded){background-color:#e3f0e7cc;border-color:#d0e3d5}
@media(prefers-reduced-motion:reduce){.product-row{transition:none}}

/* Keep glass controls distinct on the brighter page. */
.search-box,.breadcrumbs{background:#e5f0e8b8;border-color:#c7dccc;box-shadow:0 5px 18px #31554008;color:#55715e}
.search-box input::placeholder{color:#627969;opacity:1}
.search-box kbd{background:#d8e7dd;color:#546d5b}
.filter-row select,.filter-row button,.category-chip{background:#e1ede5c7;border-color:#bed3c4;color:#496650}
.filter-row button.selected{background:#c9dfcf;border-color:#95b79e;color:#264b32}
.breadcrumbs button{color:#4f6f58}.breadcrumb-separator{color:#72917b}
.entry-card,.category-tile,.service-card,.sidebar-help{background:#e7f1e9a8;border-color:#cbded0}
.entry-card:hover,.category-tile:hover{background:#dcece1d9}
.sidebar{background:#edf4eea8;border-color:#d1e1d5}
.topbar .outline-button{background:#e1ede6b8;border-color:#c0d5c6;color:#486650}
@media(max-width:760px){.mobile-dock{background:#e0ece4e8;border-color:#b9d1c1;box-shadow:0 12px 35px #25493222,0 2px 8px #2549320d}.mobile-dock button{color:#607966}.mobile-dock button.active{color:#2f593d}.mobile-dock button.active span{background:#c8dece}}

/* Fit an open product and a glimpse of its neighbours in the viewport. */
.product-row .expanded-layout{gap:18px;padding:14px 0 16px;align-items:start}
.product-row .product-portrait{min-height:0}
.product-row .product-portrait img{height:220px}
.product-row .product-portrait .image-note{margin-top:4px;font-size:10px;line-height:1.6}
.product-row .product-description>h3,.product-row .product-description>.eyebrow{display:none}
.product-row .product-description p{margin:0 0 8px;line-height:1.8}
.product-row .product-facts{margin:8px auto 0;min-height:58px}
@media(max-width:760px){
 .product-row .row-summary{padding:14px;row-gap:10px}
 .product-row.has-discount .row-summary{padding-top:38px}
 .product-row .product-thumb{height:85px}
 .product-row.expanded .product-name>strong{font-size:19px}
 .product-row .expanded-layout{margin:0 14px;gap:10px;padding:10px 0 14px}
 .product-row .product-portrait img{height:clamp(130px,20svh,170px)}
 .product-row .product-description p{font-size:12px;line-height:1.75}
 .product-row .product-facts{min-height:56px}
 #service-grid{gap:12px}
}

/* Smaller price typography and thumbnails with matching layout tracks. */
.product-row .row-summary{grid-template-columns:76px minmax(0,1fr) minmax(240px,280px) 20px;gap:12px}
.product-row.expanded .row-summary{grid-template-columns:0px minmax(0,1fr) minmax(240px,280px) 20px}
.product-row .product-thumb{width:76px;height:78px}
.row-price .price-ticket{max-width:280px;margin:0 auto;padding:12px 10px 16px}
.row-price .price-ticket .amount strong{font-size:30px;line-height:1.4;letter-spacing:-.5px}
.row-price .price-ticket .amount small{font-size:9px}
.row-price .price-ticket .amount>.ticket-numeric{font-size:10px;min-height:34px;margin-top:3px;line-height:1.7}
.row-price .price-ticket .amount>.ticket-barcode{width:88px;height:12px;margin:5px auto 3px}
@media(max-width:760px){
 .product-row .row-summary{grid-template-columns:64px minmax(0,1fr) 18px;gap:10px}
 .product-row.expanded .row-summary{grid-template-columns:0px minmax(0,1fr) 18px}
 .product-row .product-thumb{width:64px;height:66px}
 .row-price .price-ticket{width:calc(100% - 16px);max-width:280px;padding:11px 10px 15px}
 .row-price .price-ticket .amount strong{font-size:clamp(26px,7.5vw,30px)}
}

/* Bound every thumbnail, including tall vials and wide packaging. */
.product-row .row-summary{grid-template-columns:56px minmax(0,1fr) minmax(240px,280px) 20px}
.product-row .product-thumb{width:56px;height:56px;min-width:0;min-height:0;overflow:hidden;align-self:center}
.product-row .product-thumb img{display:block;width:56px;height:56px;max-width:100%;max-height:100%;min-width:0;min-height:0;object-fit:contain;object-position:center;padding:3px;box-sizing:border-box}
.row-price .price-ticket .amount>.ticket-numeric{font-size:9px;line-height:1.65;min-height:30px}
@media(max-width:760px){
 .product-row .row-summary{grid-template-columns:48px minmax(0,1fr) 18px}
 .product-row.expanded .row-summary{grid-template-columns:0px minmax(0,1fr) 18px}
 .product-row .product-thumb{width:48px;height:48px}
 .product-row .product-thumb img{width:48px;height:48px}
}
.product-row.expanded .row-summary>.product-thumb{width:0;min-width:0}

.product-help{margin:0 0 14px;color:#4d7059;font-size:12px;line-height:1.8}
@media(max-width:760px){.product-help{font-size:11px;margin-bottom:12px}}

/* Compact page header and a single organised catalog toolbar. */
.topbar{height:64px;min-height:64px;gap:12px}
.header-logo .avan-logo{width:62px;max-height:52px}
.topbar .outline-button{min-height:36px;padding:7px 12px;font-size:11px}
.breadcrumbs{margin:0 0 10px;padding:2px 7px;border-radius:12px}
.breadcrumbs button{min-height:34px;padding:5px 7px}
.breadcrumb-current{padding:5px 7px}
#services-view:not([hidden]){display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px}
#services-view>.section-title{grid-column:1/-1;grid-row:1;margin:0 0 2px;min-height:28px}
#services-view>.search-box{grid-column:1;grid-row:2;margin:0;height:42px;border-radius:12px;padding:0 12px}
#services-view>.filter-row{grid-column:2;grid-row:2;padding:0;gap:8px}
#services-view>.filter-row select{min-height:38px;max-width:160px}
#services-view>.filter-row button{min-height:38px;white-space:nowrap}
#services-view>.product-help{grid-column:1/-1;grid-row:3;margin:0 0 3px;font-size:11px}
#services-view>.product-list,#services-view>.load-more,#services-view>.data-date{grid-column:1/-1}
@media(min-width:761px){.header-logo{display:none}.topbar{justify-content:flex-end;height:52px;min-height:52px}}
@media(max-width:760px){
 .topbar{height:60px;min-height:60px}
 .header-logo .avan-logo{width:54px;max-height:46px}
 .topbar .outline-button{font-size:10px;min-height:34px;padding:6px 10px}
 .breadcrumbs{margin-bottom:8px;padding:1px 4px}
 .breadcrumbs button,.breadcrumb-current{font-size:10px;padding:4px 5px}
 #services-view:not([hidden]){grid-template-columns:minmax(0,1fr);gap:7px}
 #services-view>.section-title{grid-row:1;min-height:25px}
 #services-view>.section-title h2{font-size:16px}
 #services-view>.search-box{grid-column:1;grid-row:2;height:39px}
 #services-view>.search-box input{font-size:12px}
 #services-view>.filter-row{grid-column:1;grid-row:3;justify-content:space-between}
 #services-view>.filter-row select,#services-view>.filter-row button{min-height:33px;font-size:11px}
 #services-view>.product-help{grid-row:4;font-size:10px;line-height:1.6;margin-bottom:3px}
}

/* A compact callback form with clear fields and room for the mobile keyboard. */
#booking-dialog{width:min(480px,calc(100% - 32px));padding:24px;max-height:calc(100dvh - 32px);background:#f8fcf9f5;border:1px solid #d2e3d7;overscroll-behavior:contain;scroll-padding:20px}
#booking-dialog .booking-heading{display:flex;align-items:center;gap:12px;padding-left:34px}
#booking-dialog .booking-heading .service-icon{width:42px;height:42px;flex-shrink:0;margin:0;border-radius:14px;background:#deeee3;color:#3e6b4d}
#booking-dialog .booking-heading h2{font-size:21px;margin:0;line-height:1.6}
#booking-dialog .eyebrow{font-size:10px;color:#5c7965}
#booking-dialog .dialog-lead{margin:12px 0 16px;font-size:13px;line-height:1.85;color:#516b59}
#booking-dialog .dialog-close{top:18px;left:18px;color:#45644f;background:#e1eee5}
#booking-dialog .booking-service{padding:10px 12px;margin:0 0 10px;border-color:#c8decf;background:#e4f0e8}
#booking-dialog .booking-service strong{font-size:14px}
#booking-dialog .booking-service span{color:#5c7665}
.booking-fields{display:grid;grid-template-columns:1fr;gap:0}
#booking-dialog .field-label{font-size:12px;margin:11px 0 6px;color:#3f5d49}
#booking-dialog .form-input{min-height:46px;border-color:#bcd4c4;background:#fffdfd;border-radius:11px;box-sizing:border-box}
#booking-dialog .form-input:focus-visible{outline:2px solid #528968;outline-offset:2px}
#booking-dialog .phone-input{direction:ltr;text-align:left;font-variant-numeric:tabular-nums}
.field-help{display:block;font-size:10px;line-height:1.7;color:#61796a;margin-top:4px}
#booking-dialog .consent{margin:14px 0;line-height:1.8;color:#4c6856;font-size:11px;cursor:pointer;align-items:center}
#booking-dialog .consent input{width:20px;height:20px;margin:0;accent-color:#477a57}
#booking-dialog .dark-button{min-height:46px;font-size:13px;justify-content:center}
#booking-dialog .dark-button:disabled{opacity:.7;cursor:wait}
#booking-dialog .form-footnote{font-size:10px;color:#61796a;line-height:1.7;margin-top:8px}
#booking-dialog .form-error{font-size:12px;line-height:1.8}
@media(max-width:760px){#booking-dialog{width:calc(100% - 20px);max-width:480px;margin:auto;inset:0;padding:20px 16px;border-radius:22px;max-height:calc(100dvh - 24px);height:fit-content}#booking-dialog .dialog-close{top:16px;left:16px}#booking-dialog .booking-heading h2{font-size:20px}}

/* Three compact tools reveal one control at a time. */
#services-view:not([hidden]){grid-template-columns:minmax(0,1fr) auto;gap:8px 10px}
#services-view>.section-title{grid-column:1;grid-row:1;flex-wrap:wrap;justify-content:flex-start;gap:4px 12px;margin:0}
.catalog-tools{grid-column:2;grid-row:1;display:flex;gap:6px;align-items:center}
.catalog-tool{position:relative;display:grid;place-items:center;width:40px;height:40px;border-radius:12px;border:1px solid #bdd3c5;background:#e1eee6c7;backdrop-filter:blur(20px);color:#466c53;cursor:pointer;transition:background .2s,box-shadow .2s}
.catalog-tool svg{display:block;width:19px;height:19px}
.catalog-tool[aria-expanded="true"]{background:#cce3d4;border-color:#88ae96;box-shadow:0 3px 10px #31543a12}
.catalog-tool.has-value::after{content:"";position:absolute;top:5px;left:5px;width:5px;height:5px;border-radius:50%;background:#427950}
.catalog-tool:focus-visible{outline:2px solid #528968;outline-offset:2px}
.catalog-panel{grid-column:1/-1;grid-row:2}
.catalog-panel:not([hidden]){display:block;animation:toolReveal .2s ease-out}
.catalog-panel .search-box{height:42px;margin:0;padding:0 12px;border-radius:12px}
.catalog-panel .filter-row{padding:9px 12px;gap:12px;border:1px solid #c7dccc;border-radius:12px;background:#e5f0e8b8}
.catalog-panel select{max-width:70%;min-height:36px}
.tool-label{font-size:11px;color:#4d7059}
#services-view>.product-help{grid-row:3;margin:0 0 3px}
@keyframes toolReveal{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.catalog-tools{gap:5px}.catalog-tool{width:38px;height:38px;border-radius:11px}#services-view>.section-title h2{font-size:15px}#services-view>.section-title>span{font-size:10px}.catalog-panel .search-box input{font-size:12px}}
@media(prefers-reduced-motion:reduce){.catalog-panel:not([hidden]){animation:none}}

/* Carry the soft product palette into the other glass cards. */
.entry-card,.category-tile,.care-card{--surface-a:#78a885;--surface-b:#b2c4aa;background:linear-gradient(135deg,color-mix(in srgb,var(--surface-a) 19%,#f5faf7) 0%,color-mix(in srgb,var(--surface-b) 17%,#f7faf8) 100%);border-color:#ffffffd9;box-shadow:0 8px 25px #31503d09,inset 0 1px 0 #ffffffbd}
.entry-card:nth-child(4n+2),.category-tile:nth-child(4n+2),.care-card:nth-child(4n+2){--surface-a:#e35a27;--surface-b:#4b79b4}
.entry-card:nth-child(4n+3),.category-tile:nth-child(4n+3),.care-card:nth-child(4n+3){--surface-a:#9364b0;--surface-b:#a5b58e}
.entry-card:nth-child(4n+4),.category-tile:nth-child(4n+4),.care-card:nth-child(4n+4){--surface-a:#b46c83;--surface-b:#739aaa}
.entry-card:hover,.category-tile:hover{background:linear-gradient(135deg,color-mix(in srgb,var(--surface-a) 25%,#f5faf7),color-mix(in srgb,var(--surface-b) 22%,#f7faf8))}
.entry-card .entry-icon,.category-tile .entry-icon{background:#ffffff80;border-color:#ffffffd9;color:#496a55}
.entry-card:nth-child(4n+2) .entry-icon,.category-tile:nth-child(4n+2) .entry-icon{color:#687d9b}
.entry-card:nth-child(4n+3) .entry-icon,.category-tile:nth-child(4n+3) .entry-icon{color:#82708e}
.entry-card:nth-child(4n+4) .entry-icon,.category-tile:nth-child(4n+4) .entry-icon{color:#8a6f7b}
#booking-dialog{background:linear-gradient(140deg,#eef7f0f5,#f1eff7f5);border-color:#ffffffd9}

/* Individual non-green gradients, visible before the product is opened. */
body{background:radial-gradient(ellipse at 10% 5%,#f0edf8 0,transparent 42%),radial-gradient(ellipse at 95% 70%,#edf1f9 0,transparent 45%),#fdfdfd;background-attachment:fixed}
.product-row,.product-row:not(.expanded){background-color:#fffdfbe0;border-color:color-mix(in srgb,var(--product-color-a,#9470c4) 25%,#fff);box-shadow:0 8px 24px #3c355509,inset 0 1px 0 #ffffffb3}
.product-row::before{background:linear-gradient(var(--product-angle,135deg),color-mix(in srgb,var(--product-color-a,#9470c4) 32%,transparent),color-mix(in srgb,var(--product-color-b,#d998ad) 28%,transparent) 70%,#ffffff10);opacity:.78}
.product-row.expanded::before{opacity:1}
.row-price .price-ticket{background:linear-gradient(140deg,#fff,color-mix(in srgb,var(--product-color-b,#d998ad) 9%,#fff))}
.entry-card,.category-tile,.care-card{--surface-a:#9470c4;--surface-b:#d998ad}
.entry-card:nth-child(4n+3),.category-tile:nth-child(4n+3),.care-card:nth-child(4n+3){--surface-a:#9364b0;--surface-b:#92a7ce}
#booking-dialog{background:linear-gradient(140deg,#f8f2fcf5,#f0f4fbf5)}

.page-guide{margin:0 0 10px;padding:7px 11px;border:1px solid #d6d9e8;border-radius:11px;background:linear-gradient(110deg,#eeeafa99,#eef2fa99);color:#58617e;font-size:12px;line-height:1.8}
@media(max-width:760px){.page-guide{padding:6px 9px;margin-bottom:8px;font-size:11px;line-height:1.7}}

/* Pearl glass and muted blue accents for navigation and information. */
.page-guide,.breadcrumbs{background:linear-gradient(115deg,#f6f4fcdb,#f0f4fbd6);border-color:#d5dae7;color:#56627c;box-shadow:0 3px 14px #4b577009,inset 0 1px 0 #fff}
.breadcrumbs button{color:#64708a}.breadcrumbs button:hover{background:#e8ebf5;color:#415373}
.breadcrumb-current{color:#435675}.breadcrumb-separator{color:#929cb1}
.catalog-tool{background:linear-gradient(140deg,#ffffffd9,#edf1f9c9);border-color:#ced6e4;color:#627291;box-shadow:inset 0 1px 0 #fff,0 2px 7px #4a577008}
.catalog-tool[aria-expanded="true"]{background:#e4e9f7;border-color:#a9b7d3;color:#425b88;box-shadow:0 3px 10px #53668712}
.catalog-tool.has-value::after{background:#7488b4}
.search-box,.catalog-panel .filter-row{background:#f1f4fbd6;border-color:#ced6e4;color:#67758e}
.search-box input{color:#37465d}.search-box input::placeholder{color:#778299}
.search-box kbd{background:#e6ebf5;color:#748099}
.filter-row select,.filter-row button{background:#f6f7fcd9;border-color:#cbd4e3;color:#576886}
.filter-row button.selected{background:#e1e7f5;border-color:#a9b7d3;color:#435e88}.tool-label{color:#65718a}
.product-facts{background:#f7f8fc85;border-color:#c6ccda;color:#465976}
.product-row.expanded .product-facts{background:#ffffff80}
.fact-cell+.fact-cell{border-color:#c6ccda}.fact-cell>span,.fact-cell>.approval-pending{color:#707c91}
.approval-mark{color:#506484}

#services-view>.page-guide{grid-column:1/-1;grid-row:3;margin:0 0 2px}
#home-view>.page-guide,#category-view>.page-guide,#subcategory-view>.page-guide,#care-view>.page-guide{margin-bottom:10px}

/* Keep guidance before the list even when the tool panels are collapsed. */
#services-view>.product-list{grid-row:4}
#services-view>.load-more{grid-row:5}
#services-view>.data-date{grid-row:6}
@media(prefers-reduced-motion:no-preference){
 .product-row .accordion{transition:grid-template-rows .28s cubic-bezier(.22,1,.36,1)}
 .product-row .row-summary{transition:grid-template-columns .28s cubic-bezier(.22,1,.36,1)}
 .product-row .product-name{transition:transform .28s cubic-bezier(.22,1,.36,1)}
 .product-row .product-name>strong{transition:font-size .28s cubic-bezier(.22,1,.36,1)}
 .product-row.expanded .row-summary>.product-thumb{transition:opacity .12s ease,transform .28s ease,visibility 0s .28s}
}

/* Opening adds a richer wash of the actual product palette. */
.product-row::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:inherit;background:linear-gradient(var(--product-angle,135deg),color-mix(in srgb,var(--product-open-a,#9470c4) 52%,transparent),color-mix(in srgb,var(--product-open-b,#d998ad) 42%,transparent) 68%,color-mix(in srgb,var(--product-open-a,#9470c4) 28%,transparent));opacity:0;transition:opacity .35s ease}
.product-row.expanded::before{opacity:0}
.product-row.expanded::after{opacity:1}
.product-row.expanded .price-ticket{background:linear-gradient(140deg,#fff,color-mix(in srgb,var(--product-open-a,#9470c4) 9%,#fff))}
.product-row.expanded .product-facts{background:#ffffff99}
@media(prefers-reduced-motion:reduce){.product-row::after{transition:none}}

/* A quiet label beside the arrow, integrated into the card surface. */
.product-row .row-summary{grid-template-columns:56px minmax(0,1fr) minmax(240px,280px) 70px}
.product-row.expanded .row-summary{grid-template-columns:0px minmax(0,1fr) minmax(240px,280px) 70px}
.expand-icon.details-toggle{display:inline-flex;align-items:center;justify-content:flex-end;gap:4px;width:auto;padding:0;border:0;border-radius:0;background:none;color:#697487;font-size:11px;font-weight:500;line-height:1.6;box-shadow:none;transform:none;white-space:nowrap}
.expand-icon.details-toggle svg{width:16px;height:16px;flex-shrink:0;transition:transform .28s ease}
.product-row.expanded .expand-icon{transform:none;background:none}
.product-row.expanded .expand-icon svg{transform:rotate(-90deg)}
.row-summary:focus-visible{outline:2px solid #7188b3;outline-offset:-4px;border-radius:inherit}
.product-row{transition:background-color .65s cubic-bezier(.22,1,.36,1),border-color .3s ease,transform .14s ease}
.product-row:has(>.row-summary:active){transform:scale(.992)}
.row-summary:active .details-toggle{color:#435775}
@media(max-width:760px){
 .product-row .row-summary{grid-template-columns:48px minmax(0,1fr) 60px}
 .product-row.expanded .row-summary{grid-template-columns:0px minmax(0,1fr) 60px}
 .expand-icon.details-toggle{font-size:10px;gap:3px;grid-column:3;grid-row:1}
 .expand-icon.details-toggle svg{width:14px;height:14px}
}
@media(prefers-reduced-motion:reduce){.product-row,.expand-icon.details-toggle svg{transition:none}.product-row:has(>.row-summary:active){transform:none}}

/* Only the first card pulses for the same four cycles as its tap hand. */
@keyframes firstCardTap{0%,100%{transform:scale(1)}40%{transform:scale(.989)}60%{transform:scale(1.012)}}
@media(prefers-reduced-motion:no-preference){.product-row.guide-pulse:not(.expanded){animation:firstCardTap 1s ease-in-out 4;transform-origin:center}}

/* Tap hint follows the card, never captures a product tap or opens it. */
.details-toggle{position:relative}
.click-guide{position:absolute;z-index:5;left:calc(100% + 12px);right:auto;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:5px;padding:0;border:0;background:transparent;color:#596181;box-shadow:none;backdrop-filter:none;font-size:11px;font-weight:700;pointer-events:none;isolation:isolate;white-space:nowrap}
.tap-demo{position:relative;width:33px;height:40px;display:block;flex-shrink:0;color:#71658d}
.tap-demo svg{position:relative;width:33px;height:40px;transform-origin:50% 70%}
.tap-demo i{position:absolute;left:10px;top:0;width:17px;height:17px;border:2px solid #a296c7;border-radius:50%;opacity:0}
@keyframes tapHand{0%,100%{transform:translateY(2px) rotate(-9deg) scale(1)}40%{transform:translateY(-3px) rotate(-9deg) scale(.91)}60%{transform:translateY(1px) rotate(-9deg) scale(1)}}
@keyframes tapRing{0%,35%{opacity:0;transform:scale(.5)}45%{opacity:.8}85%,100%{opacity:0;transform:scale(1.9)}}
@media(prefers-reduced-motion:no-preference){.click-guide{animation:tapGuideIn .18s ease-out}.tap-demo svg{animation:tapHand 1s ease-in-out 4}.tap-demo i{animation:tapRing 1s ease-out 4}}
@keyframes tapGuideIn{from{opacity:0;transform:translateY(calc(-50% + 5px))}to{opacity:1;transform:translateY(-50%)}}
.product-row .details-toggle .tap-demo svg{width:28px;height:34px}
@media(max-width:760px){.click-guide{left:calc(100% + 8px);right:auto;font-size:10px;gap:4px}.tap-demo,.product-row .details-toggle .tap-demo svg{width:24px;height:29px}}

/* Anti-aging packages: restrained blue glass, compact summaries and readable contents. */
.package-card{background:linear-gradient(125deg,hsl(var(--pkg-hue) 80% 97%),hsl(var(--pkg-hue) 65% 92%));border:1px solid hsl(var(--pkg-hue) 45% 84%)}
.package-card.expanded{background:linear-gradient(135deg,hsl(var(--pkg-hue) 85% 90%),hsl(var(--pkg-hue) 75% 96%) 65%,#fff);box-shadow:0 14px 38px hsl(var(--pkg-hue) 45% 65% / .18)}
.package-number{width:46px;height:46px;display:grid;place-items:center;border-radius:16px;background:#ffffffa8;color:hsl(var(--pkg-hue) 45% 40%);font-size:24px;font-weight:800;border:1px solid #fff;transition:transform .4s}
.package-summary .product-name small{max-width:330px;line-height:1.8}.package-card.expanded .package-number{transform:scale(.88)}
.package-select{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:0 18px 12px;font-size:10px;color:#62627a}.package-select button{border:1px solid #c9cadd;background:#ffffff65;border-radius:12px;padding:8px 10px;color:#535275;font:inherit;cursor:pointer}.package-select button[aria-pressed=true]{background:#55517f;color:#fff}
.package-content{padding:4px 18px 18px}.package-content h3{font-size:15px}.package-content ul{padding:0;list-style:none;margin:12px 0}.package-content li{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #8585a322;font-size:13px}.package-content li strong{font-size:11px;max-width:45%;color:#555371}.package-note{font-size:11px;line-height:1.9;color:#646477}.package-content .wide{margin-top:10px}
#package-compare-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;margin:12px 0;background:#eeedf8;border:1px solid #d8d7ea;border-radius:16px;font-size:12px}#package-compare-bar[hidden]{display:none}#package-compare-bar small{display:block;color:#74718c;margin-top:3px}#package-compare-bar button{font-size:11px}#package-compare-bar button:disabled{opacity:.45;cursor:default}
.package-table-wrap{overflow-x:auto;margin-top:18px}.package-table{border-collapse:collapse;min-width:550px;width:100%;font-size:12px}.package-table th,.package-table td{padding:14px 10px;text-align:right;border-bottom:1px solid #dcdce9;vertical-align:top;min-width:125px}.package-table thead{background:#eeedf9}.package-table th{font-weight:600}.package-old{color:#d3314b}.package-final{color:#22804a;font-weight:800}
@media(max-width:480px){.package-summary .product-name small{font-size:10px}.package-select{padding-inline:12px}.package-select span{font-size:9px}.package-content{padding-inline:12px}.package-number{width:38px;height:38px;font-size:21px}}

.product-row.package-card .row-summary{grid-template-columns:48px minmax(0,1fr) minmax(240px,280px) 90px}
@media(max-width:760px){.product-row.package-card .row-summary{grid-template-columns:40px minmax(0,1fr) 80px}.package-summary .package-number{grid-column:1;grid-row:1}.package-summary .product-name{grid-column:2;grid-row:1}.package-summary .row-price{grid-column:1/-1;grid-row:2}.package-summary .details-toggle{grid-column:3;grid-row:1}}

.product-row.package-card.expanded{background:linear-gradient(135deg,hsl(var(--pkg-hue) 85% 90%),hsl(var(--pkg-hue) 75% 96%) 65%,#fff)}

.page-share{font-size:11px;padding:8px 12px;margin:4px 0 12px}.page-share[hidden]{display:none}

/* Keep the navigation trail available throughout scrolling. */
#breadcrumbs{position:sticky;top:calc(env(safe-area-inset-top,0px) + 8px);z-index:60;background:rgba(247,247,253,.94);backdrop-filter:blur(18px) saturate(135%);-webkit-backdrop-filter:blur(18px) saturate(135%);border:1px solid #d5dae7;box-shadow:0 5px 20px #34335316;isolation:isolate}
#breadcrumbs[hidden]{display:none}
