.polished-page{background:#fffdfc}
.polished-page h1,.polished-page h2{line-height:1.14;letter-spacing:-.035em;text-wrap:balance}
.polished-page h1{font-size:clamp(38px,5vw,64px)}
.page-hero{position:relative;isolation:isolate;overflow:hidden;background:#211414!important;padding-top:88px;padding-bottom:88px}
.page-hero-image{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center 42%}
.page-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#1c0d0df5,#311616d9 55%,#1d10106e)}
.page-hero>div{position:relative}
.page-hero p:first-child,.page-hero>div>span:first-child{color:#ffc095;font-size:14px}
.page-hero p:last-child{color:#f2e6e6;max-width:690px}
.page-contact .page-hero:after,.page-careers .page-hero:after{content:"";position:absolute;right:-100px;top:-120px;width:480px;height:480px;border:1px solid #ffffff14;box-shadow:0 0 0 70px #ffffff04,0 0 0 140px #ffffff03;border-radius:50%;z-index:-1}
.page-card{position:relative;border:1px solid #e8dfdc;border-radius:28px;background:white;padding:34px;box-shadow:0 8px 24px #51101006;transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}
.page-card:before{content:"";position:absolute;top:0;left:34px;height:3px;width:48px;border-radius:0 0 4px 4px;background:#ff6b00;transition:width .4s ease}
.page-icon{width:28px;height:28px;display:block}
.page-card-icon{display:inline-grid;place-items:center;width:60px;height:60px;border-radius:20px;background:#fff0e7;color:#8b1a1a;transition:transform .35s ease,background .3s ease,color .3s ease}
.polished-page .page-card-icon svg{transition:transform .3s ease}
.page-services main>section:nth-child(2),.page-why main>section:nth-child(2){background:linear-gradient(135deg,#faf7f6,#f4f5f7)}
.page-services .service-photo-card .service-photo{height:260px}
.page-services .service-photo-card>p{max-width:480px}
.polished-page .service-photo-card>h2{font-size:26px}
.role-panel{padding:32px}
.responsibility-card{border:1px solid #eee6e2;background:#fffaf7;line-height:1.7;transition:border-color .3s ease,background .3s ease}
.vacancy-card{border:1px solid #b05440;background:linear-gradient(145deg,#8b1a1a,#5a1212);box-shadow:0 20px 40px #8b1a1a20}
.page-form{border:1px solid #e7dfdc;box-shadow:0 18px 48px #581b1b0b}
.page-form input,.page-form select,.page-form textarea{min-height:48px;transition:border-color .2s ease,box-shadow .2s ease;background:#fffdfc}
.page-form input:focus,.page-form select:focus,.page-form textarea:focus{border-color:#8b1a1a;box-shadow:0 0 0 4px #8b1a1a0d}
.contact-panel{align-self:start;background:linear-gradient(145deg,#8b1a1a,#591313);box-shadow:0 18px 48px #8b1a1a1a}
.contact-panel>a{overflow-wrap:anywhere}
.contact-panel>a[href^="tel:"]{font-size:clamp(27px,3vw,38px)}
.contact-location-icon{display:grid;place-items:center;margin:0 auto 16px;width:60px;height:60px;border-radius:20px;color:#ffc095;background:#ffffff0d}
.promise-panel{background:linear-gradient(135deg,#201414,#471b1b);border:1px solid #71332a;box-shadow:0 20px 48px #35141418}
.promise-panel .space-y-4 p{padding:14px 0 14px 22px;border-left:2px solid #ff9f5d;color:#f0dddd}
.polished-page a[class*="rounded-xl"],.polished-page button[type="submit"]{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:transform .25s ease,box-shadow .25s ease,background .25s ease;min-height:48px}
.polished-page a[class*="rounded-xl"][class*="hidden"]{display:none}
.polished-page a[class*="bg-brand-orange"],.polished-page button[type="submit"]{background:#8b1a1a;color:white;box-shadow:0 8px 24px #8b1a1a20}
.polished-page a[class*="bg-brand-orange"]:before,.polished-page button[type="submit"]:before{content:"";position:absolute;inset:-50% auto -50% -60%;width:35%;background:linear-gradient(90deg,transparent,#ffffff26,transparent);transform:skewX(-22deg);pointer-events:none}
.page-arrived{animation:pageArrive .6s ease both}
@keyframes pageArrive{from{opacity:.35;filter:blur(3px)}to{opacity:1;filter:blur(0)}}
@keyframes pageShine{to{left:135%}}
@keyframes pageIconPop{0%,100%{transform:translateY(0)}45%{transform:translateY(-4px)}75%{transform:translateY(1px)}}
@media(min-width:640px){.polished-page a[class*="rounded-xl"][class*="sm:block"]{display:inline-flex}}
@media(hover:hover) and (pointer:fine){
 .page-card:hover{transform:translateY(-7px);border-color:#b05238;box-shadow:0 20px 42px #5c141417}
 .page-card:hover:before{width:calc(100% - 68px)}
 .page-card:hover .page-card-icon{background:#8b1a1a;color:white;transform:rotate(-5deg)}
 .page-card:hover .page-card-icon svg{animation:pageIconPop .6s ease}
 .responsibility-card:hover{border-color:#d7b1a0;background:#fff1e8}
 .polished-page a[class*="rounded-xl"]:hover,.polished-page button[type="submit"]:hover{transform:translateY(-3px);box-shadow:0 14px 30px #65181825}
 .polished-page a[class*="bg-brand-orange"]:hover:before,.polished-page button[type="submit"]:hover:before{animation:pageShine .7s ease}
}
.polished-page a[class*="rounded-xl"]:active,.polished-page button[type="submit"]:active{transform:scale(.98)}
.polished-page section[id]{scroll-margin-top:110px}
@media(max-width:640px){.page-hero{padding-top:60px;padding-bottom:60px}.page-card,.role-panel{padding:26px}.page-card:before{left:26px}.page-services .service-photo-card .service-photo{height:210px}.page-contact .contact-panel{padding:28px}.promise-panel h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){.page-arrived,.page-card:hover .page-card-icon svg,.polished-page a[class*="bg-brand-orange"]:hover:before,.polished-page button[type="submit"]:hover:before{animation:none}.page-card,.page-card:before,.page-card-icon,.polished-page .page-card-icon svg,.responsibility-card,.page-form input,.page-form select,.page-form textarea,.polished-page a[class*="rounded-xl"],.polished-page button[type="submit"]{transition:none}.page-card:hover,.page-card:hover .page-card-icon,.polished-page a[class*="rounded-xl"]:hover,.polished-page button[type="submit"]:hover,.polished-page a[class*="rounded-xl"]:active,.polished-page button[type="submit"]:active{transform:none}}

.page-careers .page-hero:after,.page-contact .page-hero:after{display:none}
.page-careers .page-hero-image,.page-contact .page-hero-image,.page-why .page-hero-image{object-position:center 40%}

.page-contact .contact-form-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;margin-top:28px}
.page-contact .contact-form-grid>label,.page-contact .contact-panel,.page-contact .page-form{min-width:0}
.page-contact .field-optional{font-weight:400;color:#666}
.page-contact .form-help,.page-contact .privacy-note{font-size:14px;line-height:1.65;color:#525252}
.page-contact .form-help{margin-top:12px}
.page-contact .privacy-note{margin-top:20px}
.page-contact .form-availability{margin-top:20px;padding:14px 16px;border:1px solid #e7dfdc;border-radius:12px;background:#faf7f6;font-size:14px;line-height:1.65;color:#525252}
.page-contact .form-availability a{color:#8b1a1a;text-decoration:underline;text-underline-offset:3px;font-weight:600}
.page-contact :is(a,button,input,select,textarea):focus-visible{outline:3px solid #8b1a1a;outline-offset:4px}
.page-contact :is(header,.contact-panel,footer) :is(a,button):focus-visible{outline-color:#ffb47d}
.page-contact #menu-button{min-width:48px;min-height:48px}
.page-contact .contact-panel a{padding-block:6px}
.page-contact .skip-link{position:fixed;top:8px;left:8px;z-index:100;background:#fff;color:#8b1a1a;padding:12px 18px;border-radius:8px;transform:translateY(-160%);font-weight:700}
.page-contact .skip-link:focus{transform:translateY(0)}
@media(min-width:640px){.page-contact .contact-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:639px){.page-contact .page-form{padding:24px}.page-contact .page-form :is(input,select,textarea){font-size:16px}.page-contact main>section:nth-child(2){padding-block:48px}}

/* Contact motion runs once as content enters view; fields stay usable throughout. */
@keyframes contactEnter{from{opacity:.65;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@keyframes contactPhotoSettle{from{transform:scale(1.035)}to{transform:scale(1)}}
.page-contact .contact-hero-enter .page-hero-image{animation:contactPhotoSettle 1.4s ease-out both}
.page-contact .contact-hero-enter h1{animation:contactEnter .7s ease-out both}
.page-contact .contact-hero-enter>div>p{animation:contactEnter .5s ease-out both}
.page-contact .page-arrived{animation:contactEnter .65s ease-out both}
.page-contact .contact-detail-enter{animation:contactEnter .5s ease-out var(--contact-delay,0ms) both}
.page-contact .contact-panel>a{transition:color .2s ease,text-shadow .2s ease}
@media(hover:hover) and (pointer:fine){.page-contact .contact-panel>a:hover{color:#ffc095;text-shadow:0 2px 18px #ffb47d30}}
@media(prefers-reduced-motion:reduce){
 .page-contact .contact-hero-enter :is(h1,p,.page-hero-image),.page-contact .page-arrived,.page-contact .contact-detail-enter{animation:none;transform:none;opacity:1}
 .page-contact .contact-panel>a{transition:none}
}

@property --contact-stroke-angle{syntax:"<angle>";inherits:false;initial-value:0deg}
.page-services .services-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:30px}
.page-services .services-button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:52px;padding:15px 24px;border-radius:12px;background:#ffc095;color:#351414;font-weight:800;font-size:14px;transition:translate .25s ease,box-shadow .25s ease}
.page-services .services-hero-link{color:white;text-decoration:underline;text-underline-offset:5px;padding:12px;font-size:14px}
.page-services .services-jump{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;padding:24px 20px;background:white;border-bottom:1px solid #e8dfdc}
.page-services .services-jump a{padding:12px 18px;border:1px solid #e8dfdc;border-radius:30px;font-size:14px;color:#651818;font-weight:700;transition:background .2s ease}
.page-services .services-intro{max-width:1280px;padding-inline:32px;margin:0 auto 36px}
.page-services .services-eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:800;color:#9a331d;margin-bottom:16px}
.page-services .services-intro h2{font-size:clamp(30px,3.3vw,42px);font-weight:800;font-family:Manrope,sans-serif}
.page-services .services-intro>p:last-child{margin-top:18px;color:#625653;font-size:16px;line-height:1.8;max-width:650px}
.page-services .service-photo-card{box-shadow:0 14px 38px #581b1b0a;border-radius:26px}
.page-services .service-photo-card>p{max-width:none;font-size:15px;line-height:1.8}
.page-services .services-inclusions{list-style:none;margin-top:22px;padding-top:20px;border-top:1px solid #eee6e2;font-size:14px;line-height:1.8;color:#4e4440}
.page-services .services-inclusions li+li{margin-top:8px}
.page-services .services-inclusions li::before{content:"✓";color:#8b1a1a;font-weight:800;margin-right:10px}
.page-services .services-process{padding-block:80px;background:#fffdfc}
.page-services .services-process ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;max-width:1280px;margin:auto;padding:0 32px;list-style:none}
.page-services .services-process li{padding:28px;border:1px solid #e8dfdc;border-radius:22px;background:white}
.page-services .services-process li>span{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#fff0e7;color:#8b1a1a;font-weight:800;font-size:13px}
.page-services .services-process h3{font-size:19px;font-weight:800;margin-top:22px}
.page-services .services-process li p{font-size:15px;color:#625653;line-height:1.8;margin-top:12px}
.page-services .services-cta-section{padding-inline:20px;background:#faf7f6}
.page-services .services-cta{position:relative;background:linear-gradient(125deg,#351414,#781a1a);padding:52px 32px;border-radius:28px;box-shadow:0 20px 50px #581b1b18;color:white;transition:translate .3s ease,box-shadow .3s ease}
.page-services .services-cta p{color:#f0dddd;line-height:1.8}
.page-services .services-cta::after{content:"";position:absolute;inset:0;border-radius:inherit;padding:2px;pointer-events:none;background:conic-gradient(from -90deg,#ffc095 0deg var(--contact-stroke-angle),transparent var(--contact-stroke-angle) 360deg);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;opacity:0;transition:--contact-stroke-angle .7s ease,opacity .2s ease}
.page-services .services-cta:focus-within::after{--contact-stroke-angle:360deg;opacity:1}
.page-services :is(a,button):focus-visible{outline:3px solid #a43e20;outline-offset:5px}
.page-services :is(.page-hero,.services-cta,footer) a:focus-visible{outline-color:#ffc095}
.page-services #menu-button{min-height:48px;min-width:48px}
.page-services .services-skip{position:fixed;top:12px;left:12px;z-index:100;padding:12px 18px;background:white;color:#8b1a1a;border-radius:8px;transform:translateY(-160%)}
.page-services .services-skip:focus{transform:none}
.page-services .page-arrived{animation:contactEnter .65s ease-out both}
@media(hover:hover) and (pointer:fine){.page-services .services-button:hover{translate:0 -3px;box-shadow:0 14px 30px #00000026}.page-services .services-jump a:hover{background:#fff0e7}.page-services .services-cta:hover{translate:0 -4px;box-shadow:0 28px 60px #581b1b26}.page-services .services-cta:hover::after{--contact-stroke-angle:360deg;opacity:1}}
@media(max-width:767px){.page-services .services-process ol{grid-template-columns:1fr;padding-inline:20px}.page-services .services-intro{padding-inline:20px}.page-services .services-cta{padding:36px 24px}.page-services .services-process{padding-block:56px}}
@media(prefers-reduced-motion:reduce){.page-services .page-arrived{animation:none}.page-services .services-button,.page-services .services-jump a,.page-services .services-cta,.page-services .services-cta::after{transition:none}.page-services .services-button:hover,.page-services .services-cta:hover{translate:none}}
.page-careers .career-start-button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:52px;padding:14px 24px;margin-top:24px;border-radius:12px;background:#ffc095;color:#351414;font-weight:800;box-shadow:0 8px 24px #00000020;transition:translate .25s ease,box-shadow .25s ease}
.page-careers .candidate-form{margin-top:28px;padding:28px;border:1px solid #ffffff35;border-radius:20px;background:#ffffff0a;text-align:left}
.page-careers .candidate-form[hidden]{display:none}
.page-careers .candidate-form h3{font-family:Manrope,sans-serif;font-size:24px;font-weight:800}
.page-careers .candidate-help{margin-top:16px;font-size:14px;line-height:1.8;color:#f0dddd}
.page-careers .candidate-grid,.page-careers .candidate-uploads{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:24px}
.page-careers .candidate-form label{display:block;min-width:0;font-size:14px;font-weight:700}
.page-careers .candidate-form input{display:block;width:100%;min-height:48px;margin-top:10px;padding:12px;border:1px solid #d7c4bd;border-radius:10px;background:#fffdfc;color:#351414;font-size:16px;font-weight:400}
.page-careers .candidate-upload{padding:18px;border:1px dashed #ffc09580;border-radius:14px;background:#ffffff08;transition:background .25s ease,border-color .25s ease}
.page-careers .candidate-upload:last-child{grid-column:1/-1}
.page-careers .candidate-form input[type=file]{font-size:13px;padding:8px;overflow:hidden}
.page-careers .candidate-form input::file-selector-button{padding:8px 10px;border:0;border-radius:6px;background:#8b1a1a;color:white;margin-right:10px;cursor:pointer}
.page-careers .candidate-files{display:block;margin-top:10px;overflow-wrap:anywhere;color:#ffc095;font-weight:400;font-size:13px}
.page-careers .candidate-status{margin-top:16px;line-height:1.8;color:#fff0e7;font-size:14px}
.page-careers .candidate-form input:focus-visible{outline:3px solid #ffc095;outline-offset:3px}
.page-careers .candidate-form.candidate-open{animation:contactEnter .45s ease-out both}
@media(hover:hover) and (pointer:fine){.page-careers .career-start-button:hover{translate:0 -3px;box-shadow:0 14px 30px #00000030}.page-careers .candidate-upload:hover{background:#ffffff14;border-color:#ffc095}}
@media(max-width:639px){.page-careers .candidate-form{padding:20px 16px}.page-careers .candidate-grid,.page-careers .candidate-uploads{grid-template-columns:minmax(0,1fr)}.page-careers .career-start-button{width:100%}}
@media(prefers-reduced-motion:reduce){.page-careers .candidate-form.candidate-open{animation:none}.page-careers .career-start-button,.page-careers .candidate-upload{transition:none}.page-careers .career-start-button:hover{translate:none}}
.page-careers .career-role-section{background:linear-gradient(135deg,#faf7f6,#f5f6f8)}
.page-careers .career-intro{max-width:1280px;margin:0 auto 36px;padding-inline:32px}
.page-careers .career-intro h2{font-family:Manrope,sans-serif;font-size:clamp(28px,3vw,38px);font-weight:800}
.page-careers .career-intro p{margin-top:12px;color:#625653;font-size:16px;line-height:1.8;max-width:650px}
.page-careers .role-panel{padding:36px;border-radius:26px;box-shadow:0 12px 36px #581b1b08}
.page-careers .role-panel h2{font-size:clamp(25px,2.6vw,32px)}
.page-careers .role-panel>p:first-child{font-size:12px;color:#9a331d}
.page-careers .responsibility-card{background:#fcfaf9;font-size:15px;padding:20px;border-radius:16px}
.page-careers .career-section-label{font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#9a331d;margin-bottom:14px}
.page-careers .vacancy-card{position:relative;border-radius:26px;padding:30px;transition:box-shadow .3s ease,translate .3s ease}
.page-careers .vacancy-card dl>div+div{border-top:1px solid #ffffff26;padding-top:18px}
.page-careers .career-deadline{display:inline-flex;align-items:center;gap:10px;background:#ffffff0d;color:#fff0e7;border-radius:12px;padding:12px 18px;border:1px solid #ffffff30;font-size:14px}
.page-careers .career-hero-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:28px}
.page-careers .career-hero-actions .career-primary{background:#ffc095;color:#351414;box-shadow:0 8px 24px #00000020}
.page-careers .career-secondary{color:#fff;text-decoration:underline;text-underline-offset:5px;padding:12px 8px;font-size:14px}
.page-careers #apply{background:#fffdfc}
.page-careers .career-apply-panel{background:linear-gradient(125deg,#351414,#781a1a);border:1px solid #71332a;border-radius:28px;padding:48px;box-shadow:0 20px 50px #581b1b18;color:white;position:relative;transition:translate .3s ease,box-shadow .3s ease}
.page-careers .career-apply-panel>p:first-child{color:#ffc095;font-size:12px}
.page-careers .career-apply-panel>p{color:#f0dddd}
.page-careers .career-apply-panel strong{color:white}
.page-careers .career-apply-method{border:1px solid #ffffff30;background:#ffffff0d;border-radius:18px;padding:24px;min-width:0;text-align:left}
.page-careers .career-apply-method>span{color:#ffc095;font-size:12px}
.page-careers .career-apply-method a{color:#fff;text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere;min-height:48px;padding-block:10px}
.page-careers .career-documents{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:24px;list-style:none;padding:0}
.page-careers .career-documents li{border:1px solid #ffffff26;border-radius:30px;padding:8px 14px;font-size:13px;color:#f0dddd}
.page-careers .career-apply-panel::after,.page-careers .vacancy-card::after{content:"";position:absolute;inset:0;border-radius:inherit;padding:2px;pointer-events:none;background:conic-gradient(from -90deg,#ffc095 0deg var(--contact-stroke-angle),transparent var(--contact-stroke-angle) 360deg);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;opacity:0;transition:--contact-stroke-angle .7s ease,opacity .2s ease}
.page-careers :is(.career-apply-panel,.vacancy-card):focus-within::after{--contact-stroke-angle:360deg;opacity:1}
.page-careers :is(a,button):focus-visible{outline:3px solid #a43e20;outline-offset:5px}
.page-careers :is(.page-hero,.career-apply-panel,.vacancy-card,footer) a:focus-visible{outline-color:#ffc095}
.page-careers #menu-button{min-width:48px;min-height:48px}
.page-careers .career-skip{position:fixed;top:12px;left:12px;z-index:100;padding:12px 18px;border-radius:8px;background:white;color:#8b1a1a;transform:translateY(-160%)}
.page-careers .career-skip:focus{transform:none}
.page-careers .career-reveal-in,.page-careers .page-arrived{animation:contactEnter .65s ease-out both}
@media(hover:hover) and (pointer:fine){.page-careers :is(.career-apply-panel,.vacancy-card):hover{translate:0 -4px;box-shadow:0 28px 60px #581b1b26}.page-careers :is(.career-apply-panel,.vacancy-card):hover::after{--contact-stroke-angle:360deg;opacity:1}.page-careers .career-primary:hover{background:#ffd3b5}.page-careers .career-secondary:hover{color:#ffc095}}
@media(max-width:639px){.page-careers .role-panel{padding:26px}.page-careers .career-intro{padding-inline:20px}.page-careers .career-apply-panel{padding:30px 22px}.page-careers .career-hero-actions{align-items:stretch;flex-direction:column}.page-careers .career-secondary{text-align:center}.page-careers .career-apply-method{padding:20px}}
@media(prefers-reduced-motion:reduce){.page-careers .career-reveal-in,.page-careers .page-arrived{animation:none}.page-careers :is(.career-apply-panel,.vacancy-card),.page-careers :is(.career-apply-panel,.vacancy-card)::after{transition:none}.page-careers :is(.career-apply-panel,.vacancy-card):hover{translate:none}}
.page-why .why-cta{position:relative;isolation:isolate;overflow:hidden;transition:translate .3s ease,box-shadow .3s ease}
.page-why .why-cta>div{position:relative;z-index:1}
.page-why .why-cta::before{content:"";position:absolute;inset:-50%;z-index:0;pointer-events:none;background:radial-gradient(ellipse at 70% 35%,#ffb47d18,transparent 45%);opacity:.65}
.page-why .why-cta::after{content:"";position:absolute;inset:0;border-radius:inherit;padding:2px;pointer-events:none;z-index:2;background:conic-gradient(from -90deg,#ffc095 0deg var(--contact-stroke-angle),transparent var(--contact-stroke-angle) 360deg);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;opacity:0;transition:--contact-stroke-angle .8s ease,opacity .3s ease}
.page-why .why-cta:focus-within::after{--contact-stroke-angle:360deg;opacity:1}
.page-why .why-cta .why-button span{transition:translate .25s ease}
@keyframes whyCtaGlow{from{transform:translate(-3%,-2%);opacity:.45}to{transform:translate(3%,2%);opacity:.85}}
.page-why .why-cta.why-reveal-in::before{animation:whyCtaGlow 5s ease-in-out 2 alternate}
@media(hover:hover) and (pointer:fine){
 .page-why .why-cta:hover{translate:0 -5px;box-shadow:0 30px 66px #581b1b30,0 8px 24px #ff9f5d12}
 .page-why .why-cta:hover::after{--contact-stroke-angle:360deg;opacity:1}
 .page-why .why-cta .why-button:hover span{translate:3px -3px}
}
@media(prefers-reduced-motion:reduce){
 .page-why .why-cta,.page-why .why-cta::after,.page-why .why-cta .why-button span{transition:none}
 .page-why .why-cta.why-reveal-in::before{animation:none}
 .page-why .why-cta:hover,.page-why .why-cta .why-button:hover span{translate:none}
}
.page-why .why-container{max-width:1280px;margin:auto;padding-inline:32px}
.page-why .why-section{padding-block:88px}
.page-why .why-eyebrow{font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#9a331d;margin-bottom:18px}
.page-why .why-hero{padding-block:100px}
.page-why .why-hero h1{max-width:850px;font-size:clamp(40px,5.2vw,70px);line-height:1.08;color:#fff;font-family:Manrope,sans-serif;font-weight:800}
.page-why .why-hero h1 span{color:#ffc095}
.page-why .why-hero .why-hero-intro{max-width:610px;font-size:18px;line-height:1.8;color:#f2e6e6;margin-top:24px}
.page-why .why-hero .why-eyebrow,.page-why .why-cta .why-eyebrow{color:#ffc095}
.page-why .why-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}
.page-why .why-button{display:inline-flex;justify-content:center;align-items:center;gap:18px;min-height:52px;padding:15px 24px;border-radius:12px;font-size:14px;font-weight:700;transition:translate .25s ease,box-shadow .25s ease,background .25s ease}
.page-why .why-button-primary{background:#ffc095;color:#351414;box-shadow:0 8px 24px #00000018}
.page-why .why-button-light{color:white;border:1px solid #ffffff50;background:#ffffff08}
.page-why .why-hero-points{display:flex;flex-wrap:wrap;gap:12px 26px;padding:28px 0 0;margin:28px 0 0;border-top:1px solid #ffffff26;max-width:680px;font-size:13px;color:#f2e6e6;list-style:none}
.page-why .why-hero-points li::before{content:"✓";color:#ffc095;margin-right:9px}
.page-why h2{font-size:clamp(30px,3.4vw,44px);font-weight:800;font-family:Manrope,sans-serif}
.page-why .why-section-heading{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:end;margin-bottom:40px}
.page-why .why-section-heading>p,.page-why .why-body{font-size:17px;line-height:1.8;color:#5f5653}
.page-why .why-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.page-why .why-card{padding:32px;box-shadow:0 12px 36px #581b1b08}
.page-why .why-card-number{position:absolute;right:28px;top:32px;font-size:14px;font-weight:700;letter-spacing:.1em;color:#9a8177}
.page-why .why-card h3{font-family:Manrope,sans-serif;font-size:22px;font-weight:800;line-height:1.35;margin-top:26px}
.page-why .why-card>p{font-size:15px;line-height:1.8;color:#5f5653;margin-top:16px}
.page-why .why-card ul{list-style:none;border-top:1px solid #eee6e2;padding-top:20px;margin-top:24px;font-size:14px;line-height:1.7;color:#4e4440}
.page-why .why-card li+li{margin-top:10px}
.page-why .why-card li::before{content:"✓";color:#8b1a1a;margin-right:10px;font-weight:700}
.page-why .why-split{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
.page-why .why-photo{position:relative;border-radius:28px;overflow:hidden;min-width:0;margin:0;box-shadow:0 22px 50px #581b1b12}
.page-why .why-photo img{width:100%;height:610px;object-fit:cover;display:block}
.page-why .why-photo figcaption{position:absolute;bottom:24px;left:24px;right:24px;padding:20px 24px;background:#ffffffed;border-radius:16px;color:#651818;font-size:20px;font-weight:800;backdrop-filter:blur(10px)}
.page-why .why-body{margin-top:22px}
.page-why .why-steps{list-style:none;padding:0;margin:30px 0 0}
.page-why .why-steps li{display:flex;gap:20px;padding-block:20px;border-top:1px solid #e8dfdc}
.page-why .why-steps li>span{display:grid;place-items:center;flex:0 0 40px;height:40px;border-radius:12px;background:#fff0e7;color:#8b1a1a;font-size:13px;font-weight:800}
.page-why .why-steps h3{font-size:17px;font-weight:800;margin-bottom:6px}
.page-why .why-steps p{font-size:15px;line-height:1.7;color:#5f5653}
.page-why .why-questions{background:#faf7f6}
.page-why .why-faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:72px}
.page-why .why-faq details{border-bottom:1px solid #e3d8d3;padding:22px 0}
.page-why .why-faq details:first-child{border-top:1px solid #e3d8d3}
.page-why .why-faq summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;font-weight:700;font-size:17px;list-style:none;min-height:32px}
.page-why .why-faq summary::-webkit-details-marker{display:none}
.page-why .why-faq summary::after{content:"+";color:#8b1a1a;font-size:25px;font-weight:400}
.page-why .why-faq details[open] summary::after{content:"−"}
.page-why .why-faq p{font-size:15px;line-height:1.8;color:#5f5653;margin-top:16px}
.page-why :is(.why-body,.why-faq) a{color:#8b1a1a;text-decoration:underline;text-underline-offset:4px}
.page-why .why-cta{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center;padding:56px;border-radius:28px;background:linear-gradient(125deg,#351414,#781a1a);color:white;box-shadow:0 20px 50px #581b1b18}
.page-why .why-cta p:last-child{max-width:560px;margin-top:20px;line-height:1.8;color:#f0dddd}
.page-why .why-cta-actions{display:flex;flex-direction:column;align-items:center;gap:18px}
.page-why .why-cta-phone{font-size:14px;color:#f0dddd;padding:10px}
.page-why :is(a,button,summary):focus-visible{outline:3px solid #a43e20;outline-offset:5px}
.page-why :is(.why-hero,.why-cta,footer) a:focus-visible{outline-color:#ffc095}
.page-why #menu-button{min-width:48px;min-height:48px}
.page-why .why-skip{position:fixed;left:12px;top:12px;z-index:100;padding:12px 18px;background:white;color:#8b1a1a;border-radius:8px;transform:translateY(-160%)}
.page-why .why-skip:focus{transform:none}
.page-why .why-reveal-in{animation:contactEnter .65s ease-out both}
.page-why .page-arrived{animation:contactEnter .65s ease-out both}
@media(hover:hover) and (pointer:fine){.page-why .why-button:hover{translate:0 -3px;box-shadow:0 14px 30px #00000026}.page-why .why-card:hover{border-color:#b05238;box-shadow:0 22px 48px #581b1b18}.page-why .why-cta-phone:hover{color:#ffc095}}
@media(max-width:1023px){.page-why .why-card-grid{grid-template-columns:1fr}.page-why .why-split,.page-why .why-faq-layout{gap:40px}.page-why .why-photo img{height:550px}.page-why .why-card{padding:30px}.page-why .why-cta{padding:40px}}
@media(max-width:639px){.page-why .why-container{padding-inline:20px}.page-why .why-section{padding-block:56px}.page-why .why-hero{padding-block:64px}.page-why .why-section-heading,.page-why .why-split,.page-why .why-faq-layout,.page-why .why-cta{grid-template-columns:1fr;gap:28px}.page-why .why-photo img{height:380px}.page-why .why-actions{flex-direction:column;align-items:stretch}.page-why .why-cta{padding:30px 24px}.page-why .why-cta-actions{align-items:stretch}.page-why .why-cta-phone{text-align:center}}
@media(prefers-reduced-motion:reduce){.page-why .why-reveal-in,.page-why .page-arrived{animation:none}.page-why .why-button{transition:none}.page-why .why-button:hover{translate:none}}
.page-contact .contact-map{margin-top:36px;border:1px solid #ffffff26;border-radius:16px;overflow:hidden;background:#fff}
.page-contact .contact-map iframe{display:block;width:100%;height:300px;border:0}
.page-contact .contact-map-caption{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:16px;background:#4b1111;font-size:14px;line-height:1.6}
.page-contact .contact-map-caption a{color:#ffc095;text-decoration:underline;text-underline-offset:4px;padding-block:8px}
.page-contact :is(.page-form,.contact-panel){position:relative;--contact-stroke-color:#d85d22;transition:translate .3s ease,box-shadow .3s ease}
.page-contact .contact-panel{--contact-stroke-color:#ffc095}
.page-contact :is(.page-form,.contact-panel)::after{
 content:"";position:absolute;inset:-2px;border-radius:inherit;padding:2px;pointer-events:none;
 background:conic-gradient(from -90deg,var(--contact-stroke-color) 0deg var(--contact-stroke-angle),transparent var(--contact-stroke-angle) 360deg);
 -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
 -webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;
 opacity:0;transition:--contact-stroke-angle .65s ease,opacity .2s ease;
}
.page-contact :is(.page-form,.contact-panel):focus-within{box-shadow:0 24px 58px #581b1b24,0 8px 20px #8b1a1a12}
.page-contact :is(.page-form,.contact-panel):focus-within::after{--contact-stroke-angle:360deg;opacity:1}
@media(hover:hover) and (pointer:fine){
 .page-contact :is(.page-form,.contact-panel):hover{translate:0 -4px;box-shadow:0 28px 64px #581b1b28,0 10px 24px #8b1a1a16}
 .page-contact :is(.page-form,.contact-panel):hover::after{--contact-stroke-angle:360deg;opacity:1}
}
@media(prefers-reduced-motion:reduce){
 .page-contact :is(.page-form,.contact-panel),.page-contact :is(.page-form,.contact-panel)::after{transition:none}
 .page-contact :is(.page-form,.contact-panel):hover{translate:none}
}
