:root{--ink:#20231e;--muted:#767970;--paper:#f4f4ef;--line:#dddfd5;--accent:#d9ed9b;--dark:#171916;--radius:12px;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;color-scheme:light;scroll-behavior:smooth}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea,label{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}[hidden]{display:none!important}.svg-library{position:absolute;width:0;height:0;overflow:hidden}button:disabled{cursor:not-allowed;opacity:.45}:focus-visible{outline:3px solid #8da849;outline-offset:5px}body.dialog-open{overflow:hidden}
.site-header{background:var(--dark);color:#fff;display:flex;align-items:center;justify-content:space-between;min-height:91px;padding:17px max(5.5vw,24px);border-bottom:1px solid #ffffff12}.brand{display:inline-flex;align-items:center;text-decoration:none;gap:15px}.brand-name{font-size:39px;font-weight:900;letter-spacing:-3px;font-style:italic;line-height:1}.brand-dot{color:var(--accent)}.brand-sub{font-size:10px;font-weight:600;letter-spacing:3px;border-left:1px solid #ffffff38;padding:8px 0 8px 16px}.header-right{display:flex;gap:30px;align-items:center}.location{font-size:10px;letter-spacing:2px;color:#b0b4a8}.private-badge{display:inline-flex;align-items:center;gap:7px;color:#c3c9ba;background:#ffffff05;border:1px solid #ffffff1c;border-radius:30px;padding:8px 12px;font-size:11px}.private-badge svg{width:13px;height:13px}
.hero{background:#171916;color:#fff;min-height:370px;position:relative;overflow:hidden}.hero-visual{position:absolute;inset:0 0 0 34%;background-image:linear-gradient(90deg,#171916 1%,#17191619 35%,#17191600 74%),url('assets/hero.webp');background-size:cover;background-position:center 59%;opacity:.91}.hero:after{content:"";position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#171916e8);pointer-events:none}.hero-content{position:relative;z-index:1;margin:0 auto;padding:38px 0 40px;max-width:1220px;width:89%}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;display:flex;align-items:center;gap:9px;color:#d2d5cb;margin:0 0 20px}.eyebrow>span{width:6px;height:6px;border-radius:100%;background:var(--accent)}h1{font-size:clamp(48px,5vw,68px);letter-spacing:-3px;line-height:1.04;font-weight:500;margin:0 0 18px}h1>span{color:var(--accent)}.hero-description{font-size:13px;line-height:1.7;color:#c7c9c1;margin:0 0 21px}.hero-link{display:inline-flex;align-items:center;gap:18px;font-size:12px;font-weight:600;text-decoration:none;border-bottom:1px solid #a7b382;padding-bottom:8px}.hero-link svg{width:17px;height:17px}.hero-caption{position:absolute;z-index:1;right:5.5%;bottom:27px;display:flex;gap:30px;font-size:8px;letter-spacing:2px;color:#b3b8ac}.hero-caption span:first-child{color:var(--accent)}
.workspace{max-width:1220px;width:89%;margin:0 auto;padding:49px 0 66px;display:grid;grid-template-columns:minmax(0,1fr) 346px;gap:50px;scroll-margin-top:25px}.intro{display:flex;align-items:center;justify-content:space-between;margin-bottom:31px}.dark{color:#747b68}.intro .eyebrow{margin-bottom:10px;font-size:9px;letter-spacing:1.7px}h2{font-size:32px;line-height:1.1;letter-spacing:-1.2px;font-weight:500;margin:0}.intro-note{font-size:10px;line-height:1.6;color:#8a8e81;border-left:1px solid var(--line);padding-left:16px}.form-section{padding:0 0 29px;margin-bottom:28px;border-bottom:1px solid var(--line)}.section-heading{display:flex;align-items:center;gap:10px;margin-bottom:16px}.step-number{display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;border:1px solid #d1d6c5;border-radius:50%;font-size:9px;color:#7c8670}.section-heading h3{font-size:15px;letter-spacing:-.3px;font-weight:600;margin:0}.section-hint{font-size:10px;color:var(--muted);margin-left:auto}.care-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.care-card{background:#fff;border:1px solid #dfe1d8;border-radius:var(--radius);position:relative;cursor:pointer;padding:23px 21px 17px;display:flex;flex-direction:column;transition:border-color .2s,background .2s,box-shadow .2s;min-height:240px}.care-card:hover{border-color:#929f7b}.care-card:has(input:checked){border-color:#6c8045;background:#f0f5e5;box-shadow:inset 0 0 0 1px #6c8045}.care-card input,.extra-card input,.segmented input{position:absolute;opacity:0;width:1px;height:1px}.care-card:has(input:focus-visible),.extra-card:has(input:focus-visible),.segmented label:has(input:focus-visible){outline:3px solid #829d4b;outline-offset:4px}.selection-mark{position:absolute;right:17px;top:18px;width:20px;height:20px;border:1px solid #d6d9ce;border-radius:50%;background:#fff;display:grid;place-items:center}.selection-mark svg{width:13px;height:13px;opacity:0;stroke-width:2}.care-card:has(input:checked) .selection-mark{background:#27351c;color:var(--accent);border-color:#27351c}.care-card:has(input:checked) .selection-mark svg{opacity:1}.care-icon{width:39px;height:39px;color:#7c876d;margin-bottom:19px;stroke-width:1.25}.care-card strong{font-size:19px;letter-spacing:-.6px;font-weight:500;margin-bottom:7px}.card-description{font-size:10px;color:#7a7f73;line-height:1.5}.included{font-size:10px;line-height:1.8;color:#5e6657;margin-top:15px;margin-bottom:17px}.card-select{border-top:1px solid #dfe5d5;padding-top:11px;display:flex;align-items:center;justify-content:space-between;font-size:10px;font-weight:600;margin-top:auto}.card-select svg{height:15px;width:15px}.field-error{color:#a03e30;font-size:12px}.section-description{font-size:12px;color:var(--muted);margin:-4px 0 17px}.extras-empty{padding:20px;border:1px dashed #d1d8c7;border-radius:10px;color:#7c8472;display:flex;align-items:center;gap:11px;font-size:11px;line-height:1.5}.extras-empty svg{width:18px;height:18px}.extras-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.extra-card{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid var(--line);border-radius:9px;padding:15px 14px;position:relative;cursor:pointer;gap:10px;min-height:73px;transition:background .2s,border .2s}.extra-card:has(input:checked){border-color:#768b4d;background:#eef4e3}.extra-card:hover{border-color:#8f9e77}.extra-copy{display:flex;flex-direction:column;gap:5px}.extra-copy strong{font-size:11px;font-weight:600}.extra-copy>span{font-size:9px;line-height:1.5;color:#7c8174}.extra-check{display:grid;place-items:center;border:1px solid #cdd2c2;border-radius:5px;width:17px;height:17px;flex-shrink:0;background:#fff}.extra-check svg{width:12px;height:12px;opacity:0}.extra-card:has(input:checked) .extra-check{background:#28371c;border-color:#28371c;color:var(--accent)}.extra-card:has(input:checked) .extra-check svg{opacity:1}
fieldset{border:0;margin:0 0 20px;padding:0}legend,.text-field{font-size:11px;font-weight:600}legend{padding:0;margin-bottom:10px}.segmented{display:grid;grid-template-columns:1fr 1fr 1fr;gap:5px;padding:5px;border:1px solid var(--line);border-radius:8px;background:#eaece4}.segmented label{cursor:pointer;position:relative;min-width:0}.segmented label>span{display:flex;align-items:center;justify-content:center;padding:12px 4px;font-size:11px;border-radius:5px;color:#737c66;min-height:40px;white-space:nowrap}.segmented input:checked+span{background:white;color:#2b3521;box-shadow:0 1px 3px #00000012;font-weight:600}.fields-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.text-field{display:block}.text-field>span{font-size:9px;font-weight:400;color:#8a8f81;margin-left:6px}input[type=text],select,textarea{display:block;width:100%;background:#fff;border:1px solid var(--line);border-radius:7px;padding:13px 12px;color:#31382a;font-size:12px;line-height:1.4;font-weight:400;margin-top:9px;min-height:44px}input::placeholder,textarea::placeholder{color:#93988a;opacity:1}select{appearance:auto;padding-right:8px}.wishes-label{margin-top:20px}textarea{resize:vertical;min-height:85px}.vehicle-section{border:0;padding-bottom:0;margin-bottom:0}
.summary-column{padding-top:4px;min-width:0}.summary-card{background:var(--dark);color:#eef1e8;border:1px solid #292e24;border-radius:14px;padding:27px 26px 22px;position:sticky;top:24px}.summary-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.summary-top .eyebrow{margin:0;color:#a2ac91;letter-spacing:1.5px;font-size:8px}.summary-top svg{color:var(--accent);width:20px;height:20px}.summary-card h2{font-size:34px;letter-spacing:-1.3px}.summary-subtitle{color:#a0a896;font-size:11px;margin:10px 0 21px}.summary-empty{margin:24px 0 26px;padding:26px 15px;text-align:center;border:1px dashed #3d4534;border-radius:9px;color:#7f8b71}.summary-empty svg{width:40px;height:40px;stroke-width:1;margin-bottom:10px}.summary-empty p{font-size:15px;color:#bdc8b0;line-height:1.55;margin:0 0 11px}.summary-empty>span{font-size:10px;line-height:1.5;display:block;color:#8a957e}.summary-section{border-top:1px solid #343b2c;padding:18px 0 3px}.summary-label{font-size:8px;letter-spacing:1.5px;color:#8c997d;margin:0 0 11px}.summary-section ul{margin:0;padding:0;list-style:none}.summary-section li{font-size:12px;line-height:1.6;margin-bottom:8px;display:flex;gap:9px}.summary-section li:before{content:'✓';font-size:11px;color:var(--accent)}.summary-vehicle{display:flex;flex-direction:column;gap:5px}.summary-vehicle .summary-label{margin-bottom:5px}.summary-vehicle strong{font-size:12px;overflow-wrap:anywhere;font-weight:500}.summary-vehicle>span{font-size:11px;color:#a2ac96;line-height:1.5}#summary-wishes{font-size:11px;color:#c1c8b8;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.price-note{border-top:1px solid #343b2c;margin-top:22px;padding-top:20px}.price-note>span{font-size:11px;color:#e3e9d9}.price-note>p{font-size:10px;line-height:1.7;color:#9ea98f;margin:7px 0 20px}.primary-button{width:100%;min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:10px;border:0;background:var(--accent);border-radius:7px;padding:13px 16px;color:#26321c;font-size:11px;font-weight:600;transition:background .2s,transform .2s}.primary-button:hover:not(:disabled){background:#e5f9af;transform:translateY(-1px)}.primary-button svg{width:17px;height:17px}.summary-disclaimer{font-size:8px;text-align:center;color:#8c977e;margin:11px 0 0;line-height:1.5}.reset-button{display:flex;align-items:center;gap:7px;justify-content:center;width:100%;padding:17px 0 0;border:0;background:none;color:#9fa98f;font-size:9px}.reset-button:hover{color:#e4ebd8}.reset-button svg{width:12px;height:12px}.side-note{display:flex;justify-content:center;align-items:center;gap:8px;font-size:9px;color:#8b917e;margin-top:18px}.mini-line{width:16px;height:1px;background:#a6b38f}
.site-footer{min-height:114px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);max-width:1220px;width:89%;margin:0 auto;padding:24px 0;color:#858c78}.footer-brand{color:#30382a;gap:10px}.footer-brand .brand-name{font-size:27px}.footer-brand .brand-dot{color:#8a9f62}.footer-brand .brand-sub{font-size:7px;letter-spacing:2px;border-color:#cbd1c0;padding-left:11px}.site-footer>span{font-size:9px}.site-footer>span:last-child{font-size:7px;letter-spacing:1.5px}.mobile-bar{display:none}
dialog{width:min(560px,calc(100% - 32px));max-height:calc(100dvh - 40px);padding:0;border:0;border-radius:16px;background:var(--paper);color:var(--ink);box-shadow:0 20px 120px #0008;overscroll-behavior:contain}dialog::backdrop{background:#0b100acc;backdrop-filter:blur(5px)}.dialog-content{padding:25px 29px}.dialog-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.dialog-top .eyebrow{margin:0}.close-button{background:transparent;border:0;font-size:28px;color:#667457;width:40px;height:40px;line-height:1}.completion-mark{display:grid;place-items:center;width:38px;height:38px;background:#e2ebd1;border-radius:50%;color:#5e743a;margin-bottom:17px}.completion-mark svg{width:21px;height:21px}.dialog-content h2{font-size:34px;line-height:1.12}.dialog-description{font-size:12px;line-height:1.7;color:#78816d;margin:15px 0 18px}.request-text{height:250px;resize:vertical;font-size:11px;line-height:1.65;padding:16px;background:#fff;border-color:#d9dfcf;margin-bottom:16px;min-height:150px}.copy-button{justify-content:center;gap:10px;background:#28371c;color:#e6f2cd}.copy-button:hover:not(:disabled){background:#3c502c}.copy-status{min-height:16px;font-size:11px;line-height:1.5;color:#556d32;margin:9px 0}.dialog-note{font-size:10px;line-height:1.6;color:#7f8876;margin:12px 0}.back-button{display:block;margin:14px auto 0;background:none;border:0;color:#536343;font-size:11px;padding:8px;min-height:40px}.noscript-note{position:fixed;bottom:0;left:0;right:0;padding:20px;background:var(--accent);z-index:50}
@media(min-width:1550px){.site-header{padding-left:calc((100% - 1220px)/2);padding-right:calc((100% - 1220px)/2)}.hero{min-height:405px}.hero-content{padding-top:48px}.hero-caption{right:calc((100% - 1220px)/2)}}
@media(max-width:1100px){.workspace{gap:28px;grid-template-columns:minmax(0,1fr) 310px}.summary-card{padding:23px 21px}.care-card{padding:20px 16px 15px}.card-description{font-size:9px}.included{font-size:9px}.section-heading h3{font-size:14px}.section-hint{font-size:8px}.extra-card{padding:13px 11px}.extra-copy strong{font-size:10px}.hero-caption span:first-child{display:none}.segmented label>span{font-size:10px}.fields-row{grid-template-columns:1fr}.text-field>span{font-size:10px}}
@media(max-width:820px){.header-right{gap:15px}.location{display:none}.workspace{grid-template-columns:minmax(0,1fr);gap:32px;max-width:650px}.summary-column{padding:0}.summary-card{position:static;padding:25px}.side-note{margin:15px 0 0}.hero{min-height:350px}.hero-visual{inset:0 0 0 28%;background-position:52% 50%;opacity:.63}.hero-content{padding:38px 0}.hero-caption{display:none}.care-card{padding:23px 21px 17px}.card-description,.included{font-size:11px}.section-hint{font-size:10px}.section-heading h3{font-size:15px}.extra-copy strong{font-size:12px}.extra-copy>span{font-size:10px}.extra-card{padding:15px}.fields-row{grid-template-columns:1fr 1fr}.segmented label>span{font-size:12px}.summary-empty{padding:20px}.site-footer>span:last-child{display:none}.site-footer{padding-bottom:112px}.mobile-bar{position:fixed;bottom:0;left:0;right:0;z-index:5;background:#171916f7;backdrop-filter:blur(12px);border-top:1px solid #424c37;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 5.5%;padding-bottom:calc(13px + env(safe-area-inset-bottom))}.mobile-bar>div{min-width:0;display:flex;flex-direction:column;gap:6px}.mobile-bar>div>span{font-size:7px;letter-spacing:1.5px;color:#8e9e7b}.mobile-bar strong{font-size:12px;font-weight:500;color:#e1e9d5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-bar>button{display:flex;align-items:center;gap:15px;justify-content:center;border:0;border-radius:6px;background:var(--accent);color:#26331b;padding:12px 18px;min-height:44px;font-size:12px;flex-shrink:0}.mobile-bar svg{width:17px;height:17px}.text-field,legend{font-size:12px}input[type=text],select,textarea{font-size:16px}.request-text{font-size:13px}}
@media(max-width:480px){.site-header{min-height:77px;padding:17px 6%}.brand-name{font-size:33px}.brand-sub{font-size:8px;letter-spacing:2px;padding-left:12px}.brand{gap:12px}.private-badge{font-size:9px;padding:7px 9px;gap:5px}.private-badge svg{width:11px;height:11px}.hero{min-height:340px}.hero-content{width:88%;padding-top:32px}.hero-visual{inset:0 -44% 0 5%;background-position:50% 55%;opacity:.57;background-image:linear-gradient(90deg,#171916e0 1%,#17191670 34%,#17191600 75%),url('assets/hero.webp')}.hero .eyebrow{font-size:8px;letter-spacing:1.7px;margin-bottom:20px}h1{font-size:46px;letter-spacing:-2.2px}.hero-description{font-size:12px}.hero-link{font-size:11px}.workspace{width:88%;padding:32px 0 38px;scroll-margin-top:15px}.intro{margin-bottom:26px}.intro .eyebrow{font-size:8px;letter-spacing:1.3px}.intro h2{font-size:29px}.intro-note{font-size:9px;padding-left:10px}.section-heading{gap:8px;flex-wrap:wrap}.section-heading h3{font-size:13px}.section-hint{font-size:8px}.step-number{width:23px;height:23px;font-size:8px}.care-grid{gap:10px}.care-card{padding:18px 13px 13px;min-height:259px}.care-icon{width:34px;height:34px;margin-bottom:20px}.care-card strong{font-size:17px;letter-spacing:-.5px}.selection-mark{right:12px;top:15px;width:18px;height:18px}.card-description{font-size:10px;min-height:31px}.included{font-size:9px;line-height:1.8}.card-select{font-size:9px}.section-description{font-size:11px;line-height:1.6}.form-section{padding-bottom:25px;margin-bottom:25px}.extras-grid{grid-template-columns:1fr}.extra-copy strong{font-size:12px}.extra-copy>span{font-size:10px}.extra-card{padding:15px 16px}.extras-empty{font-size:10px;padding:17px 14px}.segmented label>span{font-size:10px;white-space:normal;text-align:center;padding:10px 4px;min-height:42px}.fields-row{grid-template-columns:1fr}.wishes-label{margin-top:20px}.summary-card h2{font-size:32px}.summary-card .primary-button{font-size:12px}.site-footer{width:88%;flex-direction:column;align-items:flex-start;gap:17px;padding-top:26px;padding-bottom:115px;min-height:150px}.site-footer>span{font-size:10px}.dialog-content{padding:18px 21px}.dialog-content h2{font-size:29px}.dialog-description{font-size:11px}.request-text{height:220px}.dialog-note{font-size:10px}.dialog-top{margin-bottom:10px}.mobile-bar{padding-left:6%;padding-right:6%}.mobile-bar strong{font-size:11px}.copy-button{font-size:11px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*{transition:none!important}.primary-button:hover:not(:disabled){transform:none}}
/* Published package pricing and weekend order details */
.package-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.package-card{position:relative;display:flex;flex-direction:column;cursor:pointer;background:#fff;border:1px solid var(--line);border-radius:10px;padding:18px 17px 14px;transition:border-color .2s,background .2s;min-height:236px}.package-card:hover{border-color:#929f7b}.package-card:has(input:checked){border-color:#6c8045;background:#f0f5e5;box-shadow:inset 0 0 0 1px #6c8045}.package-card input{position:absolute;opacity:0;width:1px;height:1px}.package-card:has(input:focus-visible){outline:3px solid #829d4b;outline-offset:4px}.package-card.is-disabled{opacity:.46;cursor:not-allowed}.package-kicker{font-size:8px;letter-spacing:1.5px;color:#858c78;margin:0 0 7px}.package-card>strong{font-size:16px;font-weight:600;line-height:1.3;letter-spacing:-.3px;padding-right:18px}.package-price{font-size:26px;font-weight:600;letter-spacing:-1px;margin:9px 0}.package-price span{font-size:9px;letter-spacing:1px;margin-left:5px}.package-card ul{list-style:none;margin:0;padding:0}.package-card li{font-size:9px;line-height:1.6;color:#6e7568;padding:2px 0}.package-check,.package-popular .popular-label{position:absolute;top:13px;right:13px}.package-check{border:1px solid #cdd2c2;border-radius:50%;width:18px;height:18px;display:grid;place-items:center;background:#fff}.package-check svg{width:12px;height:12px;opacity:0}.package-card:has(input:checked) .package-check{background:#28371c;color:var(--accent);border-color:#28371c}.package-card:has(input:checked) .package-check svg{opacity:1}.package-popular{border-color:#b2c195}.package-popular .popular-label{top:12px;right:35px;color:#657a43;font-size:7px;font-weight:700;letter-spacing:.8px}.package-note{font-size:10px;color:#777f6d;background:#e8ecdf;border-radius:7px;padding:11px 13px;margin:12px 0 0;line-height:1.6}.extras-grid-static{margin-top:14px}.payment-field{margin-top:20px}.payment-options label>span{min-height:46px;font-size:12px}.booking-window{font-size:10px;color:#65734f;line-height:1.6;margin:9px 0 0}.order-note{font-size:10px;color:#727b67;line-height:1.7;border-left:2px solid #9aa879;padding:3px 0 3px 11px;margin:18px 0 0}.email-button{color:#27331d;text-decoration:none;margin:0 0 10px}.email-button svg{transform:rotate(-38deg)}.package-section .section-description{line-height:1.7}
@media(max-width:820px){.package-card{min-height:246px}}
@media(max-width:480px){.package-grid{gap:8px}.package-card{padding:14px 11px 12px;min-height:245px}.package-card>strong{font-size:14px}.package-card li{font-size:8px}.package-price{font-size:23px}.package-note{font-size:9px}.section-heading .section-hint{font-size:8px}.order-note{font-size:9px}}
@media(max-width:360px){.package-card{min-height:255px;padding:14px 10px}.package-card>strong{font-size:13px}.package-card li{font-size:8px;line-height:1.5}}
.social-links{display:flex;flex-direction:column;gap:8px}.social-links a{text-decoration:none;font-size:9px;color:#667158}.social-links a:hover{text-decoration:underline}
@media(max-width:360px){.care-grid{grid-template-columns:minmax(0,1fr)}.care-card{min-height:220px;padding:20px}.care-card strong{font-size:20px}.card-description{font-size:11px;min-height:0}.included{font-size:11px}.care-icon{margin-bottom:15px}.card-select{font-size:11px}.intro-note{display:none}.intro h2{font-size:28px}.hero h1{font-size:39px;letter-spacing:-1.8px}.site-header .brand{gap:8px}.site-header .brand-name{font-size:30px}.site-header .brand-sub{font-size:7px;letter-spacing:1.3px;padding-left:8px}.private-badge{font-size:8px;white-space:nowrap;flex-shrink:0}.section-heading h3{font-size:12px}.section-hint{font-size:7px}}

/* Calm, polished detailing finish. Decorative surface changes only. */
:root {
  --ink: #1D3542;
  --muted: #526C7A;
  --line: #D5E3E9;
  --brand-blue: #46A5AF;
  --brand-deep: #225966;
  --brand-soft: #EFF8FA;
  --brand-hover: #73BCC4;
  font-variant-numeric: tabular-nums;
}
body {
  background: radial-gradient(ellipse at 0 16%, #EEF7F9 0, #FFFFFF00 42%), linear-gradient(180deg, #FFFFFF 0%, #F8FBFC 100%);
}
.site-header {
  background: linear-gradient(180deg, #FFFFFF 0%, #FCFEFF 100%);
  box-shadow: 0 5px 24px #20374308;
}
.hero-visual { filter: grayscale(.12) contrast(1.11) saturate(.8); }
.hero::after { background: linear-gradient(0deg, #FFFFFF35, #FFFFFF00 72%); }
.hero-content h1 { text-shadow: 0 2px 20px #FFFFFF30; }
.care-card, .extra-card, .package-card {
  border-radius: 15px;
  background: linear-gradient(145deg, #FFFFFF 0%, #FFFFFF 68%, #F6FAFC 100%);
  box-shadow: 0 7px 24px #20374309;
  transition: border-color .2s ease, background-color .2s ease, box-shadow .22s ease;
}
.care-card:hover, .extra-card:hover, .package-card:hover {
  border-color: #8FC6CE;
  box-shadow: 0 10px 28px #20374312;
}
.care-card:has(input:checked), .extra-card:has(input:checked), .package-card:has(input:checked) {
  border-color: var(--brand-blue);
  background: linear-gradient(145deg, #F5FBFC 0%, #EAF5F7 100%);
  box-shadow: inset 0 0 0 1px #46A5AF, 0 10px 28px #29636E12;
}
.summary-card {
  border-radius: 18px;
  background: linear-gradient(150deg, #FFFFFF 0%, #F4F9FB 100%);
  border-color: #D8E7EC;
  box-shadow: 0 14px 38px #20374310;
}
.package-note, .bundle-saving {
  border: 1px solid #D9E9ED;
  background: linear-gradient(135deg, #F4FAFB, #EBF5F7);
}
.package-recommendation { box-shadow: 0 5px 20px #2037430B; }
input[type=text], input[type=email], input[type=tel], select, textarea {
  border-radius: 11px;
  box-shadow: inset 0 1px 2px #20374305;
  transition: border-color .18s ease, box-shadow .18s ease;
}
input[type=text]:focus, input[type=email]:focus, input[type=tel]:focus, select:focus, textarea:focus {
  border-color: #6BB3BD;
  box-shadow: 0 0 0 3px #46A5AF22;
  outline: none;
}
.primary-button, .copy-button, .email-button, .mobile-bar > button {
  border-radius: 10px;
  background: linear-gradient(135deg, #2B717D, #225966);
  box-shadow: 0 6px 18px #22596625, inset 0 1px #FFFFFF20;
  transition: background .2s ease, box-shadow .2s ease;
}
.primary-button:hover:not(:disabled), .copy-button:hover:not(:disabled), .mobile-bar > button:hover:not(:disabled) {
  background: linear-gradient(135deg, #398492, #29636E);
  box-shadow: 0 8px 22px #22596630, inset 0 1px #FFFFFF28;
  transform: none;
}
.extra-card.is-included { background: linear-gradient(145deg, #F4FAFB, #EDF6F8); }
.contact-actions a, .social-links a {
  box-shadow: 0 3px 12px #20374306;
  transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.contact-actions a:hover, .social-links a:hover { box-shadow: 0 5px 16px #2037430D; }
dialog { border-radius: 19px; }
.receipt-details { box-shadow: inset 0 1px #FFFFFF; }
@media (prefers-reduced-motion: reduce) {
  .care-card, .extra-card, .package-card, input, select, textarea, .primary-button, .copy-button, .contact-actions a, .social-links a { transition: none; }
}

/* =============================================================
   FADE VISITENKARTEN-DESIGN — REIN VISUELLE ERGÄNZUNGEN
   Originales HTML und JavaScript bleiben unverändert.
   Keine Änderungen an Raster, Abständen, Grössen oder Reihenfolge.
   Blau aus den Symbolen der gelieferten Visitenkarte: ca. #57A7B1.
   ============================================================= */
:root {
  --ink: #203743;
  --muted: #526C7A;
  --paper: #FFFFFF;
  --line: #DCE7ED;
  --accent: #57A7B1;
  --dark: #F5F8FC;
  --brand-blue: #57A7B1;
  --brand-deep: #29636E;
  --brand-soft: #EEF7F9;
  --brand-hover: #6AB6BF;
  -webkit-font-smoothing: antialiased;
}

/* Kopfbereich und Original-Logo in der bestehenden Logofläche.
   Die JPEG-Datei bleibt unverändert; nur der äussere Leerraum
   wird bei der Darstellung beschnitten. Form und Proportionen
   des vollständigen Signets bleiben erhalten. */
.site-header {
  background: #FFFFFF;
  color: var(--ink);
  border-bottom-color: var(--line);
}
.brand-name { position: relative; }
.brand-name, .brand-name .brand-dot, .footer-brand .brand-dot {
  color: transparent;
}
.brand-name::after {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 1.08em;
  background: url('assets/fade-logo-original.jpeg') center / auto 216% no-repeat;
  pointer-events: none;
}
.brand-sub, .footer-brand .brand-sub {
  color: var(--brand-deep);
  border-color: var(--line);
}
.location, .private-badge {
  color: var(--muted);
}
.private-badge {
  background: var(--paper);
  border-color: var(--line);
}

/* Vorhandenes Foto, gleiche Grösse und Position; heller Verlauf. */
.hero {
  background: #FFFFFF;
  color: var(--ink);
}
.hero-visual {
  background-image: linear-gradient(90deg, #FFFFFF 1%, #FFFFFF19 35%, #FFFFFF00 74%), url('assets/hero.webp');
  filter: grayscale(1);
}
.hero::after {
  background: linear-gradient(transparent, #FFFFFFE8);
}
.eyebrow, .dark, .hero-caption {
  color: var(--muted);
}
h1 > span, h2, h3, .hero-caption span:first-child {
  color: var(--brand-deep);
}
.hero-description {
  color: var(--muted);
}
.hero-link {
  color: var(--brand-deep);
  border-bottom-color: var(--brand-blue);
}
.intro-note, .section-hint, .section-description {
  color: var(--muted);
}
.step-number {
  color: var(--brand-deep);
  border-color: #B8D8DF;
  background: #F5F8FC;
}

/* Karten: nur Farbe, Rundungen und Schatten. */
.care-card, .extra-card, .package-card {
  background: #FFFFFF;
  border-color: var(--line);
  border-radius: 12px;
  box-shadow: 0 3px 15px #20374307;
}
.care-card:hover, .extra-card:hover, .package-card:hover {
  border-color: var(--brand-blue);
  box-shadow: 0 4px 18px #29636E0D;
}
.care-card:has(input:checked),
.extra-card:has(input:checked),
.package-card:has(input:checked) {
  background: var(--brand-soft);
  border-color: var(--brand-blue);
  box-shadow: inset 0 0 0 1px var(--brand-blue), 0 4px 16px #29636E0A;
}
.care-icon, .card-select, .extra-copy strong {
  color: var(--brand-deep);
}
.card-description, .included, .extra-copy > span {
  color: var(--muted);
}
.card-select { border-top-color: var(--line); }
.selection-mark, .extra-check, .package-check {
  background: #FFFFFF;
  border-color: #B8D2DC;
}
.care-card:has(input:checked) .selection-mark,
.extra-card:has(input:checked) .extra-check,
.package-card:has(input:checked) .package-check {
  color: #FFFFFF;
  border-color: var(--brand-deep);
  background: var(--brand-deep);
}
.package-popular { border-color: #AFD0D8; }
.package-kicker, .package-card li { color: var(--muted); }
.package-card > strong, .package-price, .package-popular .popular-label {
  color: var(--brand-deep);
}
.package-card.is-disabled { opacity: .68; }
.package-note {
  color: var(--brand-deep);
  background: #F5F8FC;
  box-shadow: inset 0 0 0 1px var(--line);
}

/* Felder behalten ihre vorhandenen Abmessungen. */
legend, .text-field { color: var(--ink); }
.text-field > span { color: var(--muted); }
.segmented {
  background: #F5F8FC;
  border-color: var(--line);
  border-radius: 10px;
}
.segmented label > span { color: var(--muted); }
.segmented input:checked + span {
  color: var(--brand-deep);
  background: #FFFFFF;
  box-shadow: 0 1px 5px #29636E15, inset 0 0 0 1px #B8D8DF;
}
input[type=text], input[type=email], input[type=tel], select, textarea {
  background-color: #FFFFFF;
  color: var(--ink);
  border-color: var(--line);
  border-radius: 9px;
}
input::placeholder, textarea::placeholder { color: #69818D; }
.booking-window, .order-note {
  color: var(--muted);
}
.order-note { border-left-color: var(--brand-blue); }
.field-error { color: var(--brand-deep); }
:focus-visible,
.care-card:has(input:focus-visible),
.extra-card:has(input:focus-visible),
.package-card:has(input:focus-visible),
.segmented label:has(input:focus-visible) {
  outline-color: var(--brand-blue);
}

/* Zusammenfassung: weisse und sehr hellblaue Flächen. */
.summary-card {
  color: var(--ink);
  background: #F5F8FC;
  border-color: var(--line);
  box-shadow: 0 8px 28px #20374309;
}
.summary-top .eyebrow, .summary-subtitle,
.summary-empty > span, .summary-vehicle > span,
.summary-disclaimer, .price-note > p {
  color: var(--muted);
}
.summary-top svg, .summary-empty, .summary-label,
.summary-section li::before, .price-note > span {
  color: var(--brand-deep);
}
.summary-empty {
  background: #FFFFFF;
  border-color: #BFD8E0;
}
.summary-empty p { color: var(--ink); }
.summary-section, .price-note { border-top-color: var(--line); }
#summary-wishes { color: var(--ink); }
.reset-button { color: var(--brand-deep); }
.reset-button:hover { color: var(--ink); }
.side-note { color: var(--muted); }
.mini-line { background: var(--brand-blue); }

/* Sanfte Hover-Farben ohne Bewegung des Buttons. */
.primary-button, .copy-button, .email-button {
  color: #12343D;
  background: var(--brand-blue);
  border-radius: 9px;
  box-shadow: 0 3px 9px #29636E12;
  transition: background-color .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.primary-button:hover:not(:disabled), .copy-button:hover:not(:disabled) {
  color: #12343D;
  background: var(--brand-hover);
  transform: none;
  box-shadow: 0 4px 12px #29636E1A;
}
dialog {
  color: var(--ink);
  background: #FFFFFF;
  box-shadow: 0 20px 100px #20374330;
}
dialog::backdrop { background: #20374370; }
.close-button, .back-button, .copy-status {
  color: var(--brand-deep);
}
.completion-mark {
  color: var(--brand-deep);
  background: var(--brand-soft);
}
.dialog-description, .dialog-note { color: var(--muted); }
.request-text { border-color: var(--line); }
.site-footer, .footer-brand, .social-links a {
  color: var(--muted);
}

@media (max-width: 820px) {
  .hero-visual {
    background-image: linear-gradient(90deg, #FFFFFFF2 1%, #FFFFFFD9 34%, #FFFFFF70 75%), url('assets/hero.webp');
  }
  .mobile-bar {
    background: #FFFFFFF7;
    border-top-color: var(--line);
    box-shadow: 0 -4px 18px #2037430A;
  }
  .mobile-bar > div > span { color: var(--muted); }
  .mobile-bar strong { color: var(--ink); }
  .mobile-bar > button {
    color: #12343D;
    background: var(--brand-blue);
    border-radius: 9px;
  }
}

/* Klarere Fahrzeugfotografie und ruhige, luxuriöse Oberflächen. */
.hero-visual {
  opacity: 1;
  filter: grayscale(.45) contrast(1.06);
  background-image: linear-gradient(90deg, #FFFFFF 0%, #FFFFFF70 13%, #FFFFFF00 34%), url('assets/hero.webp');
}
.hero::after { background: linear-gradient(0deg, #FFFFFF80, transparent 60%); }
.hero-caption { color: #E6EDF1; text-shadow: 0 1px 5px #20374380; }
.hero-caption span:first-child { color: #D9F0F4; }
.care-card, .extra-card, .package-card {
  border-color: #DCE6EC;
  box-shadow: 0 5px 22px #20374308;
}
.care-card:hover, .extra-card:hover, .package-card:hover { box-shadow: 0 7px 25px #20374310; }
.summary-card { background: #F6F9FC; box-shadow: 0 10px 34px #2037430C; }
.package-card.is-disabled { opacity: .8; }
.primary-button, .copy-button, .email-button, .mobile-bar > button {
  color: #FFFFFF;
  background: #29636E;
  box-shadow: 0 4px 14px #29636E20;
}
.primary-button:hover:not(:disabled), .copy-button:hover:not(:disabled), .mobile-bar > button:hover:not(:disabled) {
  color: #FFFFFF;
  background: #204F59;
  box-shadow: 0 5px 18px #29636E28;
}
input[type=email], input[type=tel] {
  display: block;
  width: 100%;
  padding: 13px 12px;
  font-size: 12px;
  line-height: 1.4;
  font-weight: 400;
  margin-top: 9px;
  min-height: 44px;
  border: 1px solid var(--line);
}
.submit-status { color: var(--brand-deep); font-size: 11px; line-height: 1.6; }
.receipt-details { padding: 18px; background: #F5F8FC; border: 1px solid var(--line); border-radius: 12px; }
.receipt-details dt { color: var(--muted); font-size: 9px; letter-spacing: 1px; text-transform: uppercase; margin-top: 16px; }
.receipt-details dt:first-child { margin-top: 0; }
.receipt-details dd { color: var(--ink); font-size: 12px; line-height: 1.6; margin: 5px 0 0; overflow-wrap: anywhere; }
.photo-upload { margin-top: 20px; padding: 20px; border: 1px solid #BADBE0; border-radius: 12px; background: #F1F8FA; }
.photo-upload input[type=file] { display: block; width: 100%; min-width: 0; min-height: 48px; margin-top: 10px; color: var(--ink); font: inherit; padding: 6px; border: 1px solid var(--line); border-radius: 8px; background: white; }
.photo-upload input::file-selector-button { min-height: 36px; border: 0; border-radius: 6px; padding: 8px 12px; margin-right: 9px; background: #29636E; color: white; font: inherit; cursor: pointer; }
.photo-hint, .photo-status { font-size: 11px; line-height: 1.6; color: var(--brand-deep); margin: 10px 0 0; }
.photo-previews { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 12px; }
.photo-previews:empty, .photo-status:empty { display: none; }
.photo-previews figure { min-width: 0; margin: 0; background: white; border: 1px solid var(--line); border-radius: 10px; overflow: hidden; }
.photo-previews img { display: block; width: 100%; height: 120px; object-fit: cover; }
.photo-previews figcaption { padding: 10px 10px 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 11px; }
.photo-previews button { min-height: 44px; width: 100%; padding: 8px 10px; border: 0; background: white; color: var(--brand-deep); font-size: 12px; text-decoration: underline; cursor: pointer; }
.booking-window { margin-bottom: 4px; }
@media (max-width: 820px) {
  .hero-visual {
    opacity: 1;
    background-image: linear-gradient(90deg, #102029DD 0%, #10202980 40%, #10202920 90%), url('assets/hero.webp');
  }
  .hero { background: #102029; }
  .hero::after { background: linear-gradient(transparent, #10202970); }
  .hero h1, .hero-link { color: #FFFFFF; }
  .hero h1 > span { color: #B5E4EB; }
  .hero-description, .hero .eyebrow { color: #E0EDF2; }
  .hero-link { border-bottom-color: #A7D9E2; }
  input[type=email], input[type=tel] { font-size: 16px; }
}

/* Originale Druckvorlagen: Vektorlogo und exakter Karten-Blauton. */
:root { --accent: #46A5AF; --brand-blue: #46A5AF; }
.brand-name::after {
  width: 100%;
  background-image: url('assets/fade-wordmark.svg');
  background-size: contain;
  background-position: left center;
}
.care-price { color: var(--brand-deep); font-size: 20px; letter-spacing: -.5px; font-weight: 600; margin: 1px 0 10px; }
.package-saving { color: var(--brand-deep); display: block; font-size: 10px; line-height: 1.5; margin-top: auto; padding-top: 12px; }
.package-card ul { margin-bottom: 8px; }
.extra-copy .extra-price { color: var(--brand-deep); font-size: 11px; font-weight: 600; margin-top: 3px; }
.extra-card.is-included { cursor: default; background: #F1F8FA; border-color: #BADBE0; }
.extra-card.is-included .extra-price { color: #456D76; }
.individual-mode-button { display: block; background: transparent; border: 0; color: var(--brand-deep); text-decoration: underline; text-underline-offset: 4px; font-size: 11px; line-height: 1.5; padding: 12px 0; min-height: 44px; text-align: left; cursor: pointer; }
.vehicle-options label > span { flex-direction: column; gap: 4px; height: 100%; min-height: 58px; }
.vehicle-options small { font-size: 9px; color: var(--muted); font-weight: 400; }
.payment-options { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 380px; margin-inline: auto; }
.payment-field legend { width: 100%; text-align: center; }
.vehicle-price-note { color: var(--brand-deep) !important; font-size: 10px; }
.bundle-saving { color: var(--brand-deep) !important; background: #E8F4F6; border-radius: 8px; padding: 11px 12px; }
.package-recommendation { background: #FFFFFF; border: 1px solid #B8D8DF; border-radius: 10px; padding: 13px; margin: 12px 0 18px; }
.package-recommendation p { color: var(--brand-deep); font-size: 11px; line-height: 1.6; margin: 0 0 9px; }
.package-recommendation button { display: flex; justify-content: space-between; align-items: center; gap: 12px; width: 100%; border: 0; background: #E8F4F6; color: #244F5B; font-size: 11px; font-weight: 600; padding: 10px 12px; min-height: 44px; border-radius: 7px; }
.package-recommendation svg { width: 16px; height: 16px; }
.contact-actions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; margin-top: 14px; }
.contact-actions a, .social-links a { display: flex; align-items: center; gap: 7px; min-height: 44px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 9px; background: #FFFFFF; color: var(--brand-deep); text-decoration: none; transition: background-color .18s, border-color .18s; }
.contact-actions a { justify-content: center; font-size: 10px; padding-inline: 6px; }
.contact-actions a:hover, .social-links a:hover { background: #F0F7FA; border-color: var(--brand-blue); text-decoration: none; }
.contact-actions img, .social-links img { display: block; width: 19px; height: 19px; border-radius: 50%; flex-shrink: 0; }
.social-links a { font-size: 11px; }
.mail-icon { display: inline-flex; align-items: center; justify-content: center; width: 19px; height: 19px; border-radius: 50%; color: #FFFFFF; background: var(--brand-deep); font-size: 12px; font-weight: 600; flex-shrink: 0; }
.price-note > #summary-price { font-size: 21px; font-weight: 500; letter-spacing: -.5px; }
@media (max-width: 820px) {
  .contact-actions a { min-height: 48px; }
}
@media (max-width: 480px) {
  .package-card { min-height: 295px; }
  .package-card li { font-size: 11px; line-height: 1.6; }
  .package-card > strong { font-size: 16px; }
  .package-saving { font-size: 10px; }
  .included { font-size: 10px; }
  .social-links { width: 100%; }
  .social-links a { min-height: 48px; }
  .extra-copy .extra-price { font-size: 12px; }
}
@media (max-width: 360px) {
  .package-grid { grid-template-columns: minmax(0, 1fr); }
  .package-card { min-height: 270px; padding: 19px; }
  .package-card > strong { font-size: 20px; }
  .package-price { font-size: 26px; }
}

/* FADE · ruhiger Premium-Auftritt, nur Farben und Oberflächen */
:root {
  --brand-deep: #1E5260;
  --brand-blue: #57A7B1;
  --brand-soft: #EFF7F9;
}
.site-header { box-shadow: 0 5px 22px #2037430A; }
.hero-visual { filter: grayscale(.12) contrast(1.12) saturate(.84); }
.care-card, .extra-card, .package-card {
  box-shadow: 0 7px 26px #173E4B0C;
  transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.care-card:hover, .extra-card:hover, .package-card:hover {
  box-shadow: 0 11px 30px #173E4B14;
}
.care-card:has(input:checked), .extra-card:has(input:checked), .package-card:has(input:checked) {
  box-shadow: inset 0 0 0 1px var(--brand-blue), 0 10px 28px #173E4B12;
}
.summary-card {
  color: #F5FAFC;
  background: linear-gradient(145deg, #173D49 0%, #205A68 100%);
  border-color: #173D49;
  box-shadow: 0 16px 40px #173E4B20;
}
.summary-card h2, .summary-card .price-note > #summary-price { color: #FFFFFF; }
.summary-card .summary-top .eyebrow,
.summary-card .summary-subtitle,
.summary-card .summary-section > span,
.summary-card .price-note > p { color: #D1E2E7; }
.summary-card .summary-section, .summary-card .price-note { border-color: #FFFFFF24; }
.summary-card .summary-label { color: #A9CDD5; }
.summary-card .summary-empty { border-color: #FFFFFF50; color: #D1E2E7; }
.summary-card .summary-empty p { color: #F5FAFC; }
.summary-card .summary-empty > span { color: #D1E2E7; }
.summary-card .summary-section li:before { color: #9AD1D8; }
.primary-button, .copy-button, .email-button, .mobile-bar > button {
  background: linear-gradient(135deg, #2A7784, #1E5260);
  box-shadow: 0 7px 20px #173E4B26, inset 0 1px #FFFFFF24;
}
.primary-button:hover:not(:disabled), .copy-button:hover:not(:disabled), .mobile-bar > button:hover:not(:disabled) {
  background: linear-gradient(135deg, #348A96, #246674);
  box-shadow: 0 9px 24px #173E4B30, inset 0 1px #FFFFFF30;
}
.package-note, .package-recommendation, .photo-upload, .receipt-details {
  border-radius: 12px;
}
@media (prefers-reduced-motion: reduce) {
  .care-card, .extra-card, .package-card, .primary-button, .copy-button, .mobile-bar > button { transition: none; }
}
