/* allcareAI ACE2 · touch-first, progressively enhanced, no CSS/CDN dependencies.
   Body 20px / optional 24px; secondary copy >=18px; primary controls >=56px. */
:root{color-scheme:light;--purple:#332056;--purple-deep:#24133f;--ink:#291b46;--pink:#c00069;--pink-bright:#f0008c;--pink-light:#fff0f8;--pink-accent:#ff62ba;--teal:#00798b;--blue-light:#eaf7ff;--mint:#e8f5f0;--paper:#fffdfb;--white:#fff;--muted:#665674;--line:#d9cde1;--green:#087b51;--radius:24px;--max:1320px;--shadow:0 14px 45px #33205612;font-family:"Noto Sans CJK HK","PingFang HK","Noto Sans CJK TC","Microsoft JhengHei",system-ui,sans-serif;font-size:125%;line-height:1.65;font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:118px}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);min-width:280px}html.font-large{font-size:150%}body.dialog-open{overflow:hidden}a{color:inherit;text-decoration-thickness:2px;text-underline-offset:5px}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button,a,input,select,textarea,summary{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button{border:0}button:disabled{cursor:not-allowed;opacity:.65}button,a,input,select,textarea,summary{outline-offset:4px}:focus-visible{outline:3px solid #006b87;box-shadow:0 0 0 6px #fff}a:hover{text-decoration-thickness:3px}img{max-width:100%;height:auto;vertical-align:middle}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:800;line-height:1.3;text-wrap:balance;overflow-wrap:anywhere}h2{font-size:clamp(1.65rem,2.9vw,2.15rem);letter-spacing:-.025em}h2>span{display:block;font-size:.67em;line-height:1.6;letter-spacing:0;margin-top:8px}h3{font-size:1.2rem}p{overflow-wrap:anywhere}em{font-style:normal;color:var(--pink)}button{line-height:1.4}address{font-style:normal}select{cursor:pointer}[hidden]{display:none!important}.wrap{width:min(var(--max),calc(100% - 80px));margin-inline:auto}.section{padding:80px 0}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:32px}.section-heading>p{max-width:440px}.eyebrow{display:flex;align-items:center;gap:10px;font-size:.9rem;font-weight:750;color:var(--teal);letter-spacing:.035em;margin-bottom:12px}.eyebrow.light{color:#b9f2f4}.small,.field-hint{font-size:.9rem;line-height:1.65;color:var(--muted)}.icon{width:1.4rem;height:1.4rem;object-fit:contain;flex-shrink:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:60px;padding:14px 22px;border:2px solid transparent;border-radius:100px;text-decoration:none;font-weight:750;font-size:1rem;text-align:center;line-height:1.45;transition:background-color .18s,transform .18s,box-shadow .18s;max-width:100%;overflow-wrap:anywhere}.button-pink{background:var(--pink);color:#fff}.button-pink:hover{background:#a6005a}.button-whatsapp{background:var(--green);color:#fff}.button-whatsapp:hover{background:#05613f}.button-outline{border-color:#8b739e;background:transparent;color:var(--purple)}.button-outline:hover{background:#f5e9f3}.button-outline-light{border-color:#ddd0eb;color:#fff;background:transparent}.button-outline-light:hover{background:#52346e}.button:active{transform:scale(.985)}.text-link{display:inline-flex;align-items:center;gap:10px;padding:10px 0;min-height:52px;background:none;text-align:left;text-decoration:none;font-weight:750;font-size:1rem;line-height:1.6;max-width:100%;overflow-wrap:anywhere}.text-link:hover{text-decoration:underline}.icon-button{display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:14px;background:#fff;min-width:56px;min-height:56px;padding:12px;flex-shrink:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:fixed;top:10px;left:16px;z-index:1000;background:#fff;border:3px solid var(--purple);padding:12px;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}
/* Navigation */
.site-header{position:sticky;top:0;z-index:30;background:var(--white);border-bottom:1px solid #eee6f1}.header-inner{min-height:104px;display:flex;align-items:center;gap:28px}.brand{display:inline-flex;flex-direction:column;flex-shrink:0;gap:1px;text-decoration:none;max-width:210px}.brand img{width:200px;height:auto}.brand>span{font-size:.9rem;letter-spacing:.02em;line-height:1.4;color:var(--muted);white-space:nowrap}.desktop-nav{margin-left:auto;display:flex;align-items:center;gap:22px}.desktop-nav>a{display:flex;align-items:center;min-height:56px;font-weight:750;font-size:.9rem;text-decoration:none;white-space:nowrap}.desktop-nav>a:hover{color:var(--pink)}.header-actions{display:flex;gap:12px;align-items:center;margin-left:auto}.header-book{font-size:.9rem;padding:12px 18px;min-height:56px;white-space:nowrap}.text-size-button{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#f5eff8;border:1px solid #d9cbe4;border-radius:12px;min-height:62px;min-width:60px;padding:4px 7px;font-weight:800;font-size:1rem}.font-button-label{font-size:.9rem;line-height:1.2}.text-size-button[aria-pressed=true]{background:var(--purple);color:#fff}.menu-toggle{display:none}.mobile-nav{padding-block:10px 22px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 14px;border-top:1px solid var(--line)}.mobile-nav a{padding:12px 6px;min-height:56px;font-weight:750;font-size:1rem}.font-large .desktop-nav{display:none}.font-large .menu-toggle{display:inline-grid}
/* Hero. PNG art is separate from every heading, label, button and price. */
.hero{background:var(--purple);color:#fff;position:relative;padding:38px 0 112px;overflow:clip}.hero:before{content:"";position:absolute;inset:0 0 0 51%;background:linear-gradient(145deg,#ed008b 2%,#bf087d 40%,#332056 80%);clip-path:polygon(35% 0,100% 0,100% 100%,0 100%);pointer-events:none}.hero-grid{display:grid;grid-template-columns:1fr 1.13fr;gap:48px;align-items:center;position:relative}.hero-copy{padding:20px 0 30px;position:relative;z-index:2}.hero .eyebrow{font-size:1.15rem;color:#b3f3f9;margin-bottom:24px}.hero .eyebrow strong{color:#ff73c5}.dot{width:10px;height:10px;border-radius:50%;background:#ff76c6}.hero h1{font-size:clamp(2.4rem,5.4vw,3.85rem);line-height:1.22;font-weight:900;letter-spacing:-.04em;margin-bottom:22px}.hero h1>span{display:block}.hero-accent{color:var(--pink-accent)}.hero-product{font-weight:800;font-size:1.23rem;margin-bottom:12px}.hero-description{font-size:1.03rem;line-height:1.8;color:#f4eafc;min-height:76px;max-width:560px}.hero-cta{margin-top:22px;background:#c00069;box-shadow:0 0 0 1px #f672b8}.hero-benefits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:36px;max-width:550px}.hero-benefits>div{display:flex;flex-direction:column;align-items:flex-start;gap:9px;line-height:1.5;font-size:.9rem;font-weight:700}.benefit-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#c50074}.benefit-icon .icon{width:29px;height:29px}.hero-media{position:relative;min-width:0}.hero-art{position:relative;isolation:isolate;border-radius:38px 38px 60px 38px;overflow:hidden;aspect-ratio:1.13;background:#3a235f;touch-action:pan-y pinch-zoom}.hero-art>img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-sticker{position:absolute;right:12px;bottom:20px;background:#fff9ef;color:var(--purple);border-radius:15px;padding:13px 40px 13px 16px;box-shadow:0 7px 0 #21143b2b;transform:rotate(-4deg);font-size:1rem;line-height:1.5}.hero-sticker span:not(.sticker-star),.hero-sticker strong{display:block}.hero-sticker strong{font-size:1.15rem}.sticker-star{position:absolute;right:9px;top:8px;font-size:1.7rem;color:var(--pink)}.carousel-controls{margin:18px auto 0;display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}.circle{border-radius:50%;background:#ffffff12;border-color:#baa4d0;color:#fff}.circle:hover{background:#634285}.slide-dots{display:flex;gap:2px;align-items:center}.slide-dot{width:46px;height:54px;display:grid;place-items:center;padding:0;background:transparent}.slide-dot span{display:block;width:11px;height:11px;background:#cabcd7;border:1px solid #fff;border-radius:30px;transition:width .2s,background-color .2s}.slide-dot[aria-current=true] span{width:24px;background:#ff70c3;border-color:#ff70c3}.autoplay-button{display:flex;align-items:center;gap:9px;min-height:56px;padding:10px 14px;background:none;color:#fff;font-size:.9rem;border:1px solid #b09bc6;border-radius:40px}.autoplay-button:hover{background:#ffffff15}.autoplay-button .icon{width:22px;height:22px}.hero :focus-visible,.product-section :focus-visible,.closing-cta :focus-visible{outline-color:#ffe294}
/* Booking. Native controls remain usable on iOS/Android, keyboard and zoom. */
.booking-section{position:relative;margin-top:-68px;z-index:4;scroll-margin-top:120px}.booking-card{background:#fff;border:1px solid #ecd5e8;border-radius:28px;padding:32px;box-shadow:0 16px 0 #fdf0f8,0 20px 52px #33205616}.booking-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:26px}.booking-heading h2{font-size:1.65rem}.booking-heading h2>span{font-size:.75em}.booking-heading>p{font-size:.9rem;color:var(--muted)}.booking-heading .eyebrow{margin-bottom:4px}.booking-fields{display:grid;grid-template-columns:1fr 1fr 1.35fr 1fr;gap:20px}.field{display:flex;flex-direction:column;gap:10px;min-width:0}.field label{display:flex;align-items:center;gap:8px;font-weight:750;font-size:1rem}.field label .icon{width:23px;height:23px}.field input,.field select,.field textarea{width:100%;min-width:0;min-height:62px;background:#fffdff;border:1.5px solid #9983ab;border-radius:12px;padding:12px 15px;font-size:1rem;line-height:1.5}.field input[type=date]{appearance:auto;-webkit-appearance:auto;min-height:62px}.field textarea{min-height:110px;resize:vertical}.field input::placeholder,.field textarea::placeholder{color:#76647f;opacity:1}.field select{padding-right:28px}.field input[aria-invalid=true],.field textarea[aria-invalid=true]{border:2px solid #ab002f;background:#fff0f3}.field-hint{font-size:.9rem}.booking-extras{display:flex;gap:24px;align-items:flex-start;margin-top:8px}.quantity-field{flex:0 1 220px;margin-top:12px}.quantity-field input{max-width:160px}.quantity-unit{font-size:.9rem}.notes-details{flex:1}.notes-details summary{font-size:.9rem;font-weight:750;color:var(--muted);padding:14px 0;cursor:pointer;min-height:52px}.notes-details summary span{font-weight:500}.notes-details .field{margin:10px 0 15px}.booking-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:16px;padding-top:22px;border-top:1px solid #eee2ef}.booking-bottom .button{flex-shrink:0}.booking-bottom .small{margin-top:7px}.estimate{font-weight:750;font-size:1rem;max-width:730px}.form-error{border:2px solid #9f1748;background:#fff0f4;color:#83143d;padding:15px;border-radius:12px;margin-top:14px}.noscript-note{border:1px solid #9976b8;border-radius:12px;padding:20px;margin-top:20px;background:#f7f0fb}.noscript-note a{font-weight:750}.js-ready .noscript-only{display:none}
/* Plans */
.plans-section{padding-top:66px}.included-label{font-size:1rem;font-weight:750;display:flex;align-items:center;gap:10px;max-width:440px;padding:14px 18px;border-radius:14px;background:#eaf7f5;color:#006576}.plans-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.plan-card{padding:26px 24px;background:var(--pink-light);border:2px solid transparent;border-radius:24px;display:flex;flex-direction:column;align-items:flex-start;position:relative;min-width:0}.plan-card.featured{border-color:var(--pink);background:#ffecf6}.plan-label{font-size:.9rem;font-weight:750;letter-spacing:.02em;color:#7d2859;margin-bottom:12px}.price{color:var(--pink);display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;line-height:1.15}.price>span{font-size:1rem;font-weight:750}.price>strong{font-family:system-ui,sans-serif;font-size:clamp(1.5rem,calc(5vw + 1rem),2.6rem);font-weight:850;letter-spacing:-.05em}.price-unit{font-weight:700;font-size:1rem;color:var(--pink);margin-top:3px}.plan-symbol{margin:20px 0 12px;display:block}.plan-symbol .icon{width:38px;height:38px}.plan-card h3{font-size:1.15rem;line-height:1.6;margin-bottom:12px}.plan-card>p:not(.price-unit){font-size:.95rem;line-height:1.8;color:var(--muted);margin-bottom:22px}.plan-card .button{margin-top:auto;width:100%;font-size:.95rem;padding:12px;gap:6px}.gift-card{background:linear-gradient(150deg,#f7e8ff,#fff0f8);border-color:#f1d9ea}.gift-symbol .icon{width:60px;height:60px;margin-bottom:14px}.gift-card .plan-label{margin-bottom:8px}.gift-card h3{font-size:1.1rem;color:var(--pink)}.gift-card h3>span{display:block;font-size:1.75rem;font-weight:850}.gift-card h3>strong{display:block;font-size:1.65rem}.plan-footnote{padding-top:24px;display:grid;grid-template-columns:1fr auto;gap:30px;align-items:start}.plan-footnote p{font-size:.9rem;color:var(--muted)}.plan-footnote a{min-height:56px;display:inline-flex;align-items:center;gap:8px;font-size:.9rem;font-weight:700}
/* Lifestyle cards */
.scenarios-section{background:#fff0f7;position:relative}.scenarios-section .eyebrow{color:#8c245f}.scenario-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.scenario-card{border-radius:22px;background:#fff;overflow:hidden;text-decoration:none;display:flex;flex-direction:column;box-shadow:0 2px 0 #edd2e5;transition:transform .22s,box-shadow .22s;min-width:0}.scenario-image{aspect-ratio:1.55;overflow:hidden;background:#ece1f6}.scenario-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.scenario-copy{padding:23px;display:flex;flex-direction:column;flex:1}.card-index{color:#80667f;font-size:.9rem;font-weight:700;margin-bottom:14px}.scenario-copy h3{font-size:1.2rem;line-height:1.55;margin-bottom:12px}.scenario-copy p{font-size:.95rem;color:var(--muted);line-height:1.8;margin-bottom:18px}.card-action{display:flex;align-items:center;justify-content:space-between;gap:10px;font-weight:750;font-size:.9rem;color:var(--pink);margin-top:auto;min-height:48px}.card-action .icon{width:25px;height:25px}
/* Product */
.product-section{background:var(--purple);color:#fff}.product-layout{display:grid;grid-template-columns:.9fr 1.28fr;gap:36px 48px;align-items:start}.product-intro h2{font-size:clamp(1.8rem,3.5vw,2.5rem);margin-bottom:20px}.product-name{font-size:1.18rem;font-weight:800;margin-bottom:12px}.product-intro>p:not(.eyebrow):not(.product-name){color:#f0e7f7;font-size:1rem;line-height:1.85;max-width:560px}.feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:32px 0}.feature-grid>div>span{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#76419f;margin-bottom:10px}.feature-grid h3{font-size:1rem;margin-bottom:6px}.feature-grid p{font-size:.9rem;color:#e7dceb}.feature-grid .icon{width:30px;height:30px}.product-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.product-card{background:#fff;border-radius:24px;overflow:hidden;padding:20px 14px 12px;color:var(--ink);min-width:0}.mode-badge{display:inline-flex;align-items:center;background:var(--teal);color:#fff;border-radius:100px;padding:8px 13px;font-size:.9rem;font-weight:750;margin:0 0 18px 5px}.product-card>img{width:100%;height:auto;display:block;object-fit:contain;filter:drop-shadow(0 9px 10px #24103d18)}.product-card figcaption{padding:20px 8px 5px}.product-card figcaption>strong,.product-card figcaption>span{display:block}.product-card figcaption>strong{font-size:1rem;line-height:1.5;margin-bottom:8px}.product-card figcaption>span{font-size:.9rem;color:var(--muted)}.gallery-trigger{font-size:.9rem}.product-notes{grid-column:1/-1;border:1px solid #957cac;border-radius:16px;font-size:.9rem;margin-top:4px;padding:0 20px;scroll-margin-top:130px}.product-notes summary{font-size:1rem;min-height:60px;padding-block:16px;cursor:pointer;font-weight:700}.product-notes p{font-size:.95rem;padding-bottom:20px;line-height:1.9;color:#f0e9f7}
/* Ownership */
.ownership-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.ownership-card{border:1.5px solid #e3cbe0;border-radius:24px;padding:28px;display:flex;gap:18px;align-items:flex-start;background:#fff}.ownership-card.gift{background:#fff0f8}.ownership-icon .icon{width:38px;height:38px}.ownership-card .eyebrow{font-size:.9rem;color:#7e3964}.ownership-card h3{font-size:1.2rem;line-height:1.6;margin-bottom:14px}.ownership-card p:not(.eyebrow){font-size:.95rem;color:var(--muted);margin-bottom:10px}.ownership-card .text-link{font-size:.95rem;color:var(--pink)}.terms-details{margin-top:25px;border-bottom:1px solid var(--line)}.terms-details summary{font-weight:750;min-height:60px;padding:15px 0;cursor:pointer;font-size:1rem}.terms-content{padding:10px 0 20px;max-width:1100px}.terms-content p{font-size:.95rem;color:var(--muted);margin-bottom:15px;line-height:1.9}
/* Services and support */
.services-section{padding-top:0}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.service-card{border-radius:26px;overflow:hidden;display:grid;grid-template-columns:1.15fr 1fr;align-items:stretch;scroll-margin-top:125px}.private-card{background:#e6f6ff}.organisations-card{background:#fcedf7}.service-copy{padding:32px 0 32px 28px;position:relative;z-index:1}.service-copy h2{font-size:1.5rem;line-height:1.5;margin-bottom:16px}.service-copy>p:not(.eyebrow){font-size:.95rem;line-height:1.85;color:#574466;margin-bottom:24px}.service-copy .button{font-size:.95rem;padding:13px 16px;gap:8px;background:#ffffff8c}.service-card>img{width:100%;height:100%;object-fit:cover;object-position:32% center;mask-image:linear-gradient(90deg,transparent 0,#000 20%);align-self:stretch;min-width:0}.support-section{padding:42px 0;background:#edf8f5}.support-inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px}.support-icon{width:78px;height:78px;background:#fce3f0;border-radius:50%;display:grid;place-items:center}.support-icon .icon{width:43px;height:43px}.support-inner h2{font-size:1.6rem;line-height:1.5;margin-bottom:12px}.support-inner>div>p:not(.eyebrow){max-width:850px;font-size:.95rem;color:#4d6064}.support-inner .button{white-space:normal}.support-inner .eyebrow{margin-bottom:6px}
/* Process, FAQs, footer */
.how-section{padding-bottom:50px}.steps-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.step{position:relative;border-top:2px solid #dbc6e0;padding-top:20px}.step>span{display:flex;align-items:center;justify-content:center;width:54px;height:54px;background:#fdecf6;color:var(--pink);font-family:system-ui,sans-serif;font-weight:800;border-radius:50%;font-size:1.15rem;margin-bottom:18px}.step h3{font-size:1.15rem;line-height:1.6;margin-bottom:12px}.step p{font-size:.95rem;color:var(--muted);line-height:1.8}.faq-section{background:#faf6fb}.faq-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:60px}.faq-layout>div:first-child>p:not(.eyebrow){margin-top:20px;line-height:1.8;color:var(--muted)}.faq-list details{border-bottom:1px solid #d8c6e2}.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:22px;list-style:none;cursor:pointer;padding:22px 0;min-height:72px;font-size:1.03rem;font-weight:750;line-height:1.75}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"＋";display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#fff;flex-shrink:0;font-size:1.3rem;color:var(--pink)}.faq-list details[open] summary:after{content:"−"}.faq-list details>p{padding:0 18px 24px 0;font-size:1rem;color:var(--muted);line-height:1.9}.closing-cta{padding:56px 0;background:var(--purple);color:#fff}.closing-inner{display:flex;align-items:center;justify-content:space-between;gap:36px}.closing-inner h2{font-size:2rem;margin-bottom:12px}.closing-inner p:not(.eyebrow){color:#ebdff6}.closing-inner .button{flex-shrink:0;min-height:68px}.site-footer{padding:52px 0 26px;background:#fff}.footer-main{display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px}.footer-main>div>p{font-size:.9rem;margin-top:20px;line-height:1.9;color:var(--muted)}.footer-main nav{display:grid;grid-template-columns:1fr 1fr;align-content:start;gap:4px 20px}.footer-main nav>a{font-size:.9rem;min-height:52px;display:flex;align-items:center;text-decoration:none}.footer-main nav>a:hover{text-decoration:underline}.footer-main address{display:flex;flex-direction:column;gap:10px}.footer-main address>a{display:flex;align-items:center;gap:12px;min-height:48px;font-size:.9rem;text-decoration:none;overflow-wrap:anywhere}.privacy-details{margin:20px 0;border-bottom:1px solid #e3d9e9}.privacy-details summary{font-size:.9rem;padding:15px 0;min-height:56px;font-weight:700;cursor:pointer}.privacy-details p{font-size:.9rem;color:var(--muted);line-height:1.9;max-width:1150px;padding-bottom:22px}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:24px;font-size:.9rem;color:var(--muted)}.footer-bottom a{min-height:52px;display:flex;align-items:center}.mobile-booking-bar{display:none}
/* Native modal dialogs: escape, focus containment and inert background. */
dialog{color:var(--ink);background:var(--white);border:0;border-radius:26px;padding:30px;box-shadow:0 24px 100px #170b3670;width:min(760px,calc(100% - 32px));max-height:calc(100dvh - 32px);overscroll-behavior:contain;overflow-y:auto;margin:auto}dialog::backdrop{background:#201038bc;backdrop-filter:blur(3px)}.dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:15px}.dialog-heading h2{font-size:1.65rem}.dialog-heading .eyebrow{margin-bottom:5px}.dialog-close{min-width:56px;min-height:56px}.booking-dialog>p{margin-bottom:18px}.booking-summary{margin:22px 0;border-top:1px solid var(--line)}.summary-row{display:grid;grid-template-columns:150px 1fr;gap:18px;padding:14px 0;border-bottom:1px solid var(--line);font-size:1rem}.summary-row dt{font-weight:750;color:var(--muted)}.summary-row dd{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.quote-box{padding:18px 20px;border-radius:14px;background:#fcf0f8;color:var(--purple);font-weight:700;font-size:1.1rem;margin-bottom:15px}.quote-box span{display:block;font-size:.9rem;font-weight:500;color:var(--muted);margin-top:5px}.dialog-actions{display:flex;flex-direction:column;gap:12px;margin-top:22px}.dialog-actions .button{width:100%;min-height:62px}.message-preview{margin:18px 0}.message-preview summary{font-weight:700;min-height:56px;padding:14px 0;font-size:.9rem;cursor:pointer}.message-preview pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f7f1f9;padding:18px;border-radius:10px;font-family:inherit;font-size:.9rem;line-height:1.8;margin:10px 0}.gallery-dialog{width:min(900px,calc(100% - 32px))}.gallery-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.gallery-tabs button{background:#f8eff7;border:2px solid #d6c4df;color:var(--purple);border-radius:100px;padding:12px 18px;min-height:56px;font-size:1rem;flex:1}.gallery-tabs button[aria-selected=true]{background:var(--purple);color:#fff;border-color:var(--purple)}#gallery-panel{display:flex;align-items:center;flex-direction:column;gap:16px;padding:10px;margin-bottom:12px}#gallery-image{width:auto;max-width:100%;height:auto;max-height:55dvh;object-fit:contain}#gallery-caption{font-size:1rem;text-align:center}#outgoing-status:not(:empty){padding:14px;background:#e9f7ee;border-radius:12px}
/* Pointer precision and motion are progressive enhancements, not requirements. */
@media(hover:hover) and (pointer:fine){.scenario-card:hover{transform:translateY(-5px);box-shadow:0 16px 24px #33205616}.scenario-card:hover .scenario-image img{transform:scale(1.035)}.plan-card .button:hover,.closing-cta .button:hover{box-shadow:0 6px 18px #33205616}}
@media(min-width:1600px){.hero-art{aspect-ratio:1.13}.hero{padding-top:50px}}
@media(max-width:1280px){.desktop-nav{gap:16px}.header-inner{gap:20px}.header-book{padding-inline:15px}.brand{max-width:184px}.brand img{width:180px}.brand>span{display:none}.wrap{width:calc(100% - 56px)}.ownership-card{padding:24px;display:block}.ownership-icon{display:block;margin-bottom:16px}.hero-grid{gap:34px}.booking-fields{gap:16px}.plan-card{padding:24px 18px}.scenario-copy{padding:20px}.service-card{grid-template-columns:1.2fr .8fr}}
@media(max-width:1160px){.desktop-nav{display:none}.menu-toggle{display:inline-grid}.header-inner{min-height:88px}.header-actions{margin-left:auto}.hero-grid{grid-template-columns:1fr 1fr;gap:28px}.hero h1{font-size:3rem}.hero-benefits{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.hero-benefits>div{display:grid;grid-template-columns:52px 1fr;align-items:center;gap:10px}.booking-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-bottom{flex-wrap:wrap}.booking-bottom>.button{margin-left:auto}.plan-card h3{font-size:1.05rem}.product-layout{grid-template-columns:1fr}.product-intro{display:grid;grid-template-columns:1fr 1fr;gap:16px 36px}.product-intro>.eyebrow,.product-intro>h2,.product-intro>.product-name,.product-intro>p{grid-column:1}.product-intro>.feature-grid{grid-column:2;grid-row:2/6;margin:0}.product-intro>.button{grid-column:1;justify-self:start;margin-top:10px}.product-cards{max-width:850px;margin:auto;width:100%}.product-card{padding:24px}.product-card>img{max-height:370px}.service-grid{grid-template-columns:1fr}.service-card{grid-template-columns:1.1fr 1fr}.service-card>img{max-height:440px;object-position:center}.service-copy{padding:34px 0 34px 34px}.service-copy h2{font-size:1.8rem}.support-inner{grid-template-columns:auto 1fr}.support-inner>.button{grid-column:2;justify-self:start}.footer-main{grid-template-columns:1fr 1fr}.footer-main address{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;gap:10px 30px}}
@media(max-width:900px){:root{scroll-padding-top:108px}.wrap{width:calc(100% - 40px)}.section{padding:56px 0}.header-book{display:none}.header-inner{gap:14px;min-height:84px}.brand{max-width:200px}.brand img{width:190px}.hero{padding:30px 0 88px}.hero:before{inset:30% 0 0 0;clip-path:polygon(100% 0,100% 100%,0 100%);opacity:.6}.hero-grid{grid-template-columns:1fr;gap:25px}.hero-copy{padding:0}.hero .eyebrow{font-size:1.05rem;margin-bottom:16px}.hero h1{font-size:clamp(2.3rem,7.6vw,3.2rem);line-height:1.25;max-width:740px}.hero h1>span{display:inline}.hero h1>span:last-child:before{content:" ";white-space:normal}.hero-description{min-height:0}.hero-benefits{grid-template-columns:repeat(4,minmax(0,1fr));max-width:none;margin-top:28px}.hero-benefits>div{display:flex;flex-direction:column;align-items:flex-start}.hero-art{aspect-ratio:1.5;max-width:680px;margin:auto;border-radius:25px}.hero-art>img{object-position:center 43%}.hero-media{max-width:700px;width:100%;margin:0 auto}.hero-sticker{bottom:15px;right:15px}.carousel-controls{margin-top:14px}.booking-section{margin-top:-46px;scroll-margin-top:105px}.booking-card{padding:26px}.booking-heading{align-items:flex-start;gap:18px}.booking-heading>p{max-width:320px}.booking-bottom>.button{margin:0;width:100%}.plans-section{padding-top:64px}.section-heading{align-items:flex-start;flex-direction:column;gap:20px}.plans-grid,.scenario-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-card{padding:26px}.price strong{font-size:2.6rem}.plan-card h3{font-size:1.15rem}.plan-footnote{grid-template-columns:1fr;gap:4px}.scenario-image{aspect-ratio:1.5}.scenario-copy{padding:25px}.ownership-grid{grid-template-columns:1fr}.ownership-card{display:flex;padding:28px;gap:25px}.ownership-card>div{flex:1}.ownership-card h3 br,.ownership-card p br{display:none}.ownership-card h3{font-size:1.25rem}.ownership-icon .icon{width:42px;height:42px}.services-section{padding-top:0}.steps-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.faq-layout{grid-template-columns:1fr;gap:26px}.closing-inner{align-items:flex-start;flex-direction:column;gap:28px}.closing-inner .button{min-height:64px}.mobile-booking-bar{position:fixed;bottom:0;left:0;right:0;display:flex;align-items:center;gap:14px;padding:12px 20px calc(12px + env(safe-area-inset-bottom));z-index:25;background:#fffffff5;border-top:1px solid #dfcfdf;box-shadow:0 -6px 20px #3320560b}.mobile-booking-bar>.button{flex:1;min-height:56px;padding-block:12px}.phone-shortcut{display:grid;place-items:center;background:#f4edf8;border:1px solid #d8c4e5;border-radius:50%;height:56px;width:56px;flex-shrink:0}.site-footer{padding-bottom:calc(112px + env(safe-area-inset-bottom))}.dialog-open .mobile-booking-bar,.is-editing .mobile-booking-bar{display:none}.footer-bottom{flex-wrap:wrap}.font-large .hero-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.wrap{width:calc(100% - 36px)}.section{padding:46px 0}.brand img{width:145px}.brand{max-width:155px}.header-actions{gap:8px}.text-size-button{min-width:56px;min-height:58px}.menu-toggle{min-width:52px;min-height:56px}.header-inner{min-height:80px;gap:10px}.mobile-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{padding:26px 0 82px}.hero h1{font-size:clamp(2.1rem,10vw,2.7rem);line-height:1.25;margin-bottom:22px}.hero h1>span{display:block}.hero h1>span:last-child:before{content:none}.hero-product{font-size:1.1rem}.hero-description{font-size:1rem;line-height:1.8}.hero-cta{width:100%;margin-top:22px}.hero-benefits{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px;margin-top:28px}.hero-benefits>div{display:grid;grid-template-columns:48px 1fr;align-items:center;gap:10px;font-size:.9rem}.benefit-icon{width:48px;height:48px}.hero-art{aspect-ratio:1.05;border-radius:22px}.hero-art>img{object-position:center}.hero-sticker{font-size:.9rem;padding:10px 36px 10px 12px;right:11px;bottom:16px}.hero-sticker strong{font-size:1rem}.carousel-controls{gap:8px;max-width:420px}.carousel-controls>.icon-button{width:54px;height:54px;min-width:54px;min-height:54px}.autoplay-button{margin-left:0;min-height:54px;font-size:.9rem}.slide-dot{width:44px}.slide-dots{gap:0}.booking-card{padding:24px 20px;border-radius:24px}.booking-heading{display:block;margin-bottom:22px}.booking-heading h2{font-size:1.5rem}.booking-heading h2>span{font-size:.8em}.booking-heading>p{margin-top:18px}.booking-fields{grid-template-columns:1fr;gap:20px}.field input,.field select,.field textarea{min-height:62px;font-size:1rem}.field input[type=date]{min-height:62px}.booking-extras{display:block;margin-top:14px}.quantity-field{margin-bottom:10px}.quantity-field input{max-width:none}.booking-bottom{gap:20px;margin-top:10px;padding-top:20px}.booking-bottom .button{padding:14px 16px;gap:10px}.booking-bottom .button>.icon:last-child{display:none}.plans-section{padding-top:58px}.section-heading{margin-bottom:25px}.included-label{font-size:.95rem;align-items:flex-start;padding:15px}.plans-grid{grid-template-columns:1fr;gap:18px}.plan-card{padding:26px;display:grid;grid-template-columns:1fr auto;gap:0 15px;align-items:start}.plan-card .plan-label{grid-column:1}.plan-card .price{grid-column:1}.price strong{font-size:clamp(1.5rem,calc(5vw + 1rem),2.6rem)}.plan-card .price-unit{grid-column:1}.plan-symbol{grid-column:2;grid-row:1/4;margin:10px 0;display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:#fff}.plan-card h3{grid-column:1/-1;margin-top:16px;margin-bottom:10px}.plan-card>p:not(.price-unit){grid-column:1/-1;margin-bottom:20px}.plan-card>p:not(.price-unit) br{display:none}.plan-card .button{grid-column:1/-1;margin-top:0;min-height:60px;font-size:1rem}.gift-card{display:block}.gift-symbol{float:right}.gift-symbol .icon{width:60px;height:60px}.gift-card h3>span{display:inline;margin-left:5px;font-size:1.4rem}.gift-card h3>strong{display:block;font-size:1.8rem;margin-top:8px}.plan-footnote p{font-size:.9rem}.scenario-grid{grid-template-columns:1fr;gap:24px}.scenario-image{aspect-ratio:1.65}.scenario-copy{padding:25px}.scenario-copy h3{font-size:1.25rem}.scenario-copy p{font-size:1rem}.scenario-copy p br{display:none}.card-index{font-size:.9rem;margin-bottom:12px}.card-action{font-size:1rem}.product-layout{gap:30px}.product-intro{display:block}.product-intro h2{font-size:1.9rem}.product-intro .feature-grid{margin:30px 0;gap:24px 18px}.product-intro>.button{width:100%}.product-cards{grid-template-columns:1fr;gap:24px}.product-card{padding:22px}.product-card>img{max-height:none;height:auto;max-width:100%}.mode-badge{font-size:1rem}.product-card figcaption>strong{font-size:1.1rem}.product-card figcaption>span{font-size:1rem}.product-card figcaption{padding:22px 2px 2px}.gallery-trigger{font-size:1rem}.product-notes{padding:0 16px}.ownership-card{padding:24px;gap:18px}.ownership-card h3{font-size:1.16rem}.ownership-card .eyebrow{font-size:.9rem}.ownership-icon .icon{width:32px;height:32px}.ownership-card .text-link{font-size:1rem}.ownership-card p:not(.eyebrow){font-size:1rem}.services-section{padding-top:0}.service-grid{gap:25px}.service-card{display:flex;flex-direction:column}.service-copy{padding:28px 26px}.service-copy h2{font-size:1.6rem}.service-copy>p:not(.eyebrow){font-size:1rem;line-height:1.85}.service-copy .button{width:100%;font-size:1rem}.service-card>img{mask-image:none;width:100%;height:280px;object-position:center 35%;object-fit:cover}.support-section{padding:35px 0}.support-inner{grid-template-columns:1fr;gap:18px}.support-icon{width:64px;height:64px}.support-icon .icon{width:36px;height:36px}.support-inner h2{font-size:1.5rem}.support-inner>div>p:not(.eyebrow){font-size:1rem}.support-inner>.button{grid-column:1;width:100%}.steps-grid{grid-template-columns:1fr;gap:24px}.step{display:grid;grid-template-columns:54px 1fr;gap:8px 18px;padding-top:22px}.step>span{grid-row:1/3;margin:0}.step h3{font-size:1.15rem;margin:0;align-self:center}.step p{grid-column:2;font-size:1rem}.faq-list summary{font-size:1rem;gap:15px;padding:20px 0}.faq-list summary:after{width:38px;height:38px}.faq-list details>p{padding-right:0}.closing-cta{padding:40px 0}.closing-inner h2{font-size:1.8rem}.closing-inner .button{width:100%;font-size:1rem;padding-inline:16px;gap:9px}.closing-inner .button>.icon:last-child{display:none}.site-footer{padding-top:36px}.footer-main{grid-template-columns:1fr;gap:28px}.footer-main .brand img{width:190px}.footer-main nav{gap:0 20px}.footer-main nav>a{font-size:1rem;min-height:56px}.footer-main address{grid-column:auto;flex-direction:column;gap:12px}.footer-main address>a{font-size:.95rem;min-height:52px}.footer-bottom{font-size:.9rem;gap:10px}.footer-bottom a{font-weight:750}.mobile-booking-bar{padding-inline:18px;gap:12px}.mobile-booking-bar .button{font-size:1rem}.privacy-details p{font-size:.95rem}dialog{width:calc(100% - 20px);padding:22px 20px;border-radius:22px;max-height:calc(100dvh - 20px)}.dialog-heading h2{font-size:1.4rem}.dialog-heading .eyebrow{font-size:.9rem}.dialog-heading{gap:10px}.dialog-close{min-width:52px;min-height:52px;padding:10px}.summary-row{grid-template-columns:100px 1fr;gap:12px;font-size:.95rem}.dialog-actions .button{font-size:1rem;padding-inline:12px}.dialog-actions .button>.icon:last-child{display:none}.gallery-tabs{gap:8px}.gallery-tabs button{padding:12px 10px;font-size:.95rem;min-height:56px}.gallery-tabs button{flex-basis:calc(50% - 8px)}.quote-box{padding:17px;font-size:1rem}.font-large .header-inner{flex-wrap:wrap;padding-block:8px}.font-large .hero-benefits{grid-template-columns:1fr}.font-large .hero-benefits>div{grid-template-columns:52px 1fr}.font-large .hero-benefits br{display:none}.font-large .feature-grid{grid-template-columns:1fr}.font-large .ownership-card{display:block}.font-large .ownership-icon{margin-bottom:14px}.font-large .summary-row{grid-template-columns:1fr;gap:5px}}
@media(max-width:360px){.wrap{width:calc(100% - 28px)}.header-inner{gap:6px}.header-actions{gap:6px}.brand img{width:131px}.text-size-button{min-width:50px}.menu-toggle{min-width:50px}.hero h1{font-size:2.1rem}.booking-card{padding:22px 17px}.hero-benefits>div{display:flex;flex-direction:column;align-items:flex-start}.plan-card{padding:23px}.plan-symbol{width:48px;height:48px}.price strong{font-size:1.9rem}.ownership-card{display:block}.ownership-icon{margin-bottom:12px}.summary-row{grid-template-columns:1fr;gap:3px}.support-inner h2 br{display:none}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.scenario-card:hover,.scenario-card:hover .scenario-image img,.button:active{transform:none}}
@media(forced-colors:active){.button,.icon-button,.text-size-button,.plan-card,.scenario-card{border:2px solid ButtonText}.hero,.product-section,.closing-cta{background:Canvas;color:CanvasText}.hero-accent,.eyebrow,.card-action{color:LinkText}.slide-dot span{border:2px solid ButtonText}.hero-sticker{border:2px solid CanvasText}.icon{forced-color-adjust:none}.hero :focus-visible{outline-color:Highlight}}
@media print{.site-header,.carousel-controls,.booking-section,.mobile-booking-bar,.closing-cta,.gallery-trigger,.text-size-button,dialog{display:none!important}:root{font-size:12pt}.hero,.product-section{background:#fff;color:#000;padding:20px 0}.wrap{width:100%}.section{padding:25px 0}.hero-grid{grid-template-columns:1fr 1fr}.hero h1{font-size:28pt}.hero-art{max-height:280px}.hero:before{display:none}.hero-benefits,.hero-cta,.hero-sticker{display:none}.plan-card,.scenario-card,.ownership-card,.service-card{break-inside:avoid}.site-footer{padding-bottom:20px}.plans-grid,.scenario-grid{grid-template-columns:repeat(2,minmax(0,1fr))}a{color:#000}.feature-grid{display:none}}
/* Small-screen reading order keeps the illustration near the headline.
   All wording remains live text; the fixed booking action stays reachable. */
.brand{min-height:56px;justify-content:center}
@media(max-width:600px){
  .hero-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0}
  .hero-copy{display:contents}
  .hero-copy>.eyebrow{grid-row:1;margin-bottom:15px}
  .hero-copy>h1{grid-row:2;margin-bottom:18px}
  .hero-copy>.hero-product{grid-row:3;margin-bottom:14px}
  .hero-media{grid-row:4;margin-top:6px;margin-bottom:0}
  .hero-copy>.hero-description{grid-row:5;margin-top:24px}
  .hero-copy>.hero-cta{grid-row:6}
  .hero-copy>.hero-benefits{grid-row:7}
}
