@font-face{font-family:Fraunces;font-style:normal;font-weight:300 700;font-display:swap;src:url(/assets/fonts/fraunces.woff2) format("woff2")}@font-face{font-family:Fraunces;font-style:italic;font-weight:300 700;font-display:swap;src:url(/assets/fonts/fraunces-italic.woff2) format("woff2")}@font-face{font-family:Archivo;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/fonts/archivo.woff2) format("woff2")}[hidden]{display:none !important}body{margin:0}:root{--teal:#1B4B49;--teal-dark:#133735;--terracotta:#C1613D;--sand:#EDE3D0;--sand-dark:#E0D3B8;--charcoal:#2B2926;--brass:#B08D57;--white:#FFFFFF;--r-sm:14px;--r-md:22px;--r-lg:30px;--r-pill:999px;--ease-spring:cubic-bezier(.34,1.56,.64,1);--ease-fluid:cubic-bezier(.22,.9,.3,1);--terracotta-ink:#9E4527;--brass-light:#D9BE88}html{scroll-behavior:smooth;scroll-padding-top:96px}*{box-sizing:border-box}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--terracotta-ink);outline-offset:3px}.skip-link{position:absolute;left:16px;top:-80px;z-index:100;background:var(--teal);color:var(--sand);font-family:Archivo,sans-serif;font-weight:600;font-size:0.875rem;padding:12px 22px;border-radius:var(--r-pill);box-shadow:0 10px 24px -10px rgba(0,0,0,.4);transition:top .2s ease}.skip-link:focus{top:16px}.wrap{max-width:1180px;margin:0 auto;padding-left:clamp(20px,4vw,48px);padding-right:clamp(20px,4vw,48px)}.eyebrow{font-family:Archivo,sans-serif;font-weight:700;font-size:0.8125rem;letter-spacing:.14em;text-transform:uppercase;color:var(--terracotta-ink)}.glass{position:relative;background:rgba(255,255,255,.52);-webkit-backdrop-filter:blur(22px) saturate(180%);backdrop-filter:blur(22px) saturate(180%);border:1px solid rgba(255,255,255,.55);box-shadow:0 1px 1px rgba(255,255,255,.6) inset,0 10px 30px -14px rgba(43,41,38,.28)}.glass::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.4),rgba(255,255,255,0) 45%)}.glass-tint{background:rgba(237,227,208,.46)}.glass-dark{background:rgba(19,55,53,.55);-webkit-backdrop-filter:blur(22px) saturate(160%);backdrop-filter:blur(22px) saturate(160%);border:1px solid rgba(237,227,208,.16);box-shadow:0 1px 1px rgba(237,227,208,.1) inset,0 10px 30px -14px rgba(0,0,0,.4)}.glass-dark::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(237,227,208,.14),rgba(237,227,208,0) 45%)}.btn{display:inline-flex;align-items:center;justify-content:center;font-family:Archivo,sans-serif;font-weight:600;font-size:0.9375rem;padding:14px 28px;border-radius:var(--r-pill);border:1.5px solid transparent;cursor:pointer;min-height:44px;transition:transform .35s var(--ease-spring),box-shadow .35s var(--ease-spring),background .25s ease,border-color .25s ease,color .25s ease}.btn-primary{background:var(--terracotta-ink);color:var(--white);box-shadow:0 6px 18px -6px rgba(193,97,61,.55),inset 0 1px 0 rgba(255,255,255,.3)}.btn-primary:hover{background:#843819;transform:translateY(-2px) scale(1.015);box-shadow:0 14px 30px -8px rgba(193,97,61,.6),inset 0 1px 0 rgba(255,255,255,.35)}.btn-outline{border-color:rgba(43,41,38,.5);color:var(--charcoal);background:rgba(255,255,255,.4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-outline:hover{border-color:var(--terracotta-ink);color:var(--terracotta-ink);transform:translateY(-2px)}.btn-ghost-light{border-color:rgba(237,227,208,.4);color:var(--sand);background:rgba(237,227,208,.08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-ghost-light:hover{border-color:var(--sand);transform:translateY(-2px)}nav a.navlink{font-family:Archivo,sans-serif;font-size:0.9375rem;font-weight:500;color:var(--charcoal);position:relative;padding-bottom:3px}nav a.navlink::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:1.5px;background:var(--terracotta-ink);transition:right .3s var(--ease-fluid)}nav a.navlink:hover{color:var(--terracotta-ink)}nav a.navlink:hover::after{right:0}@keyframes bob{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(6px)}}.scroll-cue{opacity:0;animation:fadeUp .8s var(--ease-fluid) .6s forwards,bob 2.2s ease-in-out 1.4s infinite}.scroll-cue:hover{border-color:var(--terracotta-ink) !important}.logo-mark{transition:transform .4s var(--ease-spring)}a[aria-label="Foyer home"]:hover .logo-mark{transform:rotate(-6deg) scale(1.08)}.card{background:rgba(255,255,255,.58);-webkit-backdrop-filter:blur(18px) saturate(170%);backdrop-filter:blur(18px) saturate(170%);border:1px solid rgba(255,255,255,.55);border-radius:var(--r-md);padding:32px 28px;box-shadow:0 1px 1px rgba(255,255,255,.5) inset,0 14px 30px -18px rgba(43,41,38,.22);transition:transform .45s var(--ease-spring),box-shadow .45s var(--ease-fluid);position:relative;overflow:hidden}.card::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.35),rgba(255,255,255,0) 45%)}.card.alt{background:rgba(237,227,208,.5)}.card:hover{transform:translateY(-8px);box-shadow:0 28px 54px -24px rgba(43,41,38,.32)}.card:hover .svc-icon{transform:scale(1.1);color:var(--teal)}.svc-icon{transition:transform .35s var(--ease-spring),color .3s ease}h1,h2,h3{font-family:Fraunces,serif;font-weight:500;margin:0}.menu-btn{display:none;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid rgba(43,41,38,.5);background:rgba(255,255,255,.4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--r-pill);cursor:pointer;flex-shrink:0;transition:border-color .25s ease,transform .3s var(--ease-spring)}.menu-btn:hover{border-color:var(--terracotta-ink);transform:scale(1.06)}.mobile-panel a{display:block;width:100%;padding:16px 10px;font-family:Archivo,sans-serif;font-size:1.0625rem;font-weight:500;color:var(--charcoal);border-bottom:1px solid rgba(43,41,38,.08);transition:color .2s ease,padding-left .2s ease}.mobile-panel a:hover{color:var(--terracotta-ink);padding-left:6px}.nav-bar{transition:box-shadow .4s ease,background .4s ease,border-radius .4s ease}.nav-scrolled{box-shadow:0 1px 1px rgba(255,255,255,.6) inset,0 14px 34px -16px rgba(43,41,38,.35) !important}.photo-frame{overflow:hidden;border-radius:50%;border:4px solid var(--brass);transition:box-shadow .4s var(--ease-fluid)}.photo-frame img{transition:transform .6s var(--ease-fluid)}.team-card{border-radius:var(--r-lg);transition:transform .45s var(--ease-spring),box-shadow .45s var(--ease-fluid)}.team-card:hover{transform:translateY(-8px)}.team-card:hover .photo-frame{box-shadow:0 16px 32px -14px rgba(176,141,87,.6)}.team-card:hover .photo-frame img{transform:scale(1.08)}.story{height:100%;overflow-y:auto;display:flex;align-items:stretch}.story-open{display:block;height:100%;padding:0;border:0;background:none;cursor:zoom-in;flex:0 0 auto}.story-img{width:auto;height:100%;aspect-ratio:3/4;object-fit:cover;display:block}.story-body{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;padding:clamp(1.25rem,4vw,3rem)}@media (max-width:700px){.story{display:block}.story-open{float:left;width:34%;height:auto;margin:16px 14px 6px 16px;border-radius:14px;overflow:hidden;shape-outside:margin-box}.story-img{width:100%;height:auto}.story-body{display:block;padding:16px}.story-body p{font-size:.9375rem !important;line-height:1.55 !important;margin-bottom:14px !important}.story-addr{clear:both;gap:8px 10px !important;padding-top:14px !important}}.car{display:flex;flex-direction:column;gap:14px}.car-wrap{position:relative;border:1px solid rgba(255,255,255,.6);border-radius:var(--r-sm);overflow:hidden;background:rgba(255,255,255,.5)}.car-stage{overflow:hidden;touch-action:pan-y;user-select:none;-webkit-user-select:none}.car-track{display:flex;height:100%;width:100%;transition:transform .6s var(--ease-fluid);will-change:transform}.car-track.dragging{transition:none}.car-slide{flex:0 0 100%;height:100%;position:relative;overflow:hidden}.ph-bg{position:absolute;left:-30px;top:-30px;width:calc(100% + 60px);height:calc(100% + 60px);object-fit:cover;filter:blur(26px) saturate(1.25);transform:scale(1.04);opacity:.9}.ph-open{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:16px;border:0;background:none;cursor:zoom-in;box-sizing:border-box}.ph-fg{max-width:100%;max-height:100%;width:auto;height:auto;border-radius:14px;box-shadow:0 18px 40px -16px rgba(0,0,0,.5);display:block}.ph-cap{position:absolute;left:50%;bottom:30px;transform:translateX(-50%);padding:6px 14px;border-radius:var(--r-pill);background:rgba(19,55,53,.78);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--sand);font-size:.8125rem;font-weight:600;letter-spacing:.04em;white-space:nowrap;pointer-events:none}.car-arrow{position:absolute;top:50%;margin-top:-24px;z-index:3;width:48px;height:48px;border-radius:50%;border:1px solid rgba(43,41,38,.5);background:rgba(255,255,255,.8);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--charcoal);transition:transform .3s var(--ease-spring),background .2s ease}.car-arrow:hover{transform:scale(1.1);background:#fff}.car-prev{left:12px}.car-next{right:12px}.car-count{position:absolute;top:12px;right:12px;z-index:3;padding:6px 12px;border-radius:var(--r-pill);background:rgba(19,55,53,.78);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--sand);font-size:.8125rem;font-weight:600;letter-spacing:.06em}.thumbs{position:relative;display:flex;gap:10px;overflow-x:auto;padding:6px 2px}.thumbs .thumb:first-child{margin-left:auto}.thumbs .thumb:last-child{margin-right:auto}.thumb{flex:0 0 auto;width:56px;height:74px;padding:0;border-radius:12px;overflow:hidden;cursor:pointer;background:none;box-sizing:border-box;transition:opacity .25s ease,transform .3s var(--ease-spring)}.thumb:hover{opacity:1 !important;transform:translateY(-3px)}.thumb img{width:100%;height:100%;object-fit:cover;display:block}.dots{display:flex;justify-content:center;gap:7px}.lb{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;background:rgba(19,55,53,.94);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding:clamp(12px,3vw,32px);animation:lbIn .3s var(--ease-fluid)}@keyframes lbIn{from{opacity:0}to{opacity:1}}.lb-fig{margin:0;display:flex;flex-direction:column;align-items:center;gap:14px;max-width:100%;touch-action:pan-y;user-select:none;-webkit-user-select:none}.lb-img{max-width:min(92vw,820px);max-height:78vh;width:auto;height:auto;object-fit:contain;border-radius:14px;box-shadow:0 30px 70px -20px rgba(0,0,0,.6)}.lb-cap{color:var(--sand);font-size:.9375rem;font-weight:600;letter-spacing:.04em}.lb-btn{position:absolute;width:48px;height:48px;border-radius:50%;border:1px solid rgba(237,227,208,.7);background:rgba(237,227,208,.12);color:var(--sand);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease,transform .3s var(--ease-spring)}.lb-btn:hover{background:rgba(237,227,208,.25);transform:scale(1.08)}.lb-close{top:16px;right:16px}.lb-prev{left:16px;top:50%;margin-top:-24px}.lb-next{right:16px;top:50%;margin-top:-24px}@media (max-width:600px){.thumb{width:48px;height:64px}.lb-prev{left:8px}.lb-next{right:8px}.car-arrow{width:44px;height:44px;margin-top:-22px}}@media (prefers-reduced-motion:reduce){.car-track,.car-arrow,.thumb,.lb-btn{transition:none}.lb{animation:none}}.car-nav-btn:hover{border-color:var(--terracotta-ink);transform:scale(1.1)}.js .reveal{opacity:0;transform:translateY(26px);transition:opacity .8s var(--ease-fluid),transform .8s var(--ease-fluid)}.js .reveal.in-view{opacity:1;transform:translateY(0)}.reveal-d1{transition-delay:.08s}.reveal-d2{transition-delay:.16s}.reveal-d3{transition-delay:.24s}@keyframes fadeUp{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes archFadeIn{from{opacity:0;transform:scale(.92)}to{opacity:.35;transform:scale(1)}}.hero-arch{opacity:0;animation:archFadeIn 1.4s cubic-bezier(.2,.7,.3,1) forwards}.hero-anim{opacity:0;animation:fadeUp .8s cubic-bezier(.2,.7,.3,1) forwards}.hero-d0{animation-delay:.05s}.hero-d1{animation-delay:.2s}.hero-d2{animation-delay:.35s}.hero-d3{animation-delay:.5s}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js .reveal{opacity:1;transform:none;transition:none}.hero-anim{opacity:1;animation:none}.hero-arch{opacity:.35;animation:none}.scroll-cue{display:none}.btn,.card,.menu-btn,.photo-frame,.photo-frame img,.team-card,nav a.navlink::after{transition:none}}@media (max-width:860px){.grid-2{grid-template-columns:1fr !important}.grid-3{grid-template-columns:1fr !important}.svc-grid{grid-template-columns:1fr !important}.navlinks{display:none !important}.menu-btn{display:inline-flex !important}.desktop-cta{display:none !important}.hero-h1{font-size:clamp(2.125rem,10vw,2.75rem) !important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}main:focus{outline:none}.on-dark a:focus-visible,.on-dark button:focus-visible,.on-dark input:focus-visible,.on-dark select:focus-visible,.on-dark textarea:focus-visible{outline-color:var(--sand)}nav a.navlink{padding:12px 2px;min-height:44px;display:inline-flex;align-items:center}nav a.navlink::after{bottom:8px}a.m-value{display:flex;align-items:center;min-height:44px}@media (prefers-contrast:more),(prefers-reduced-transparency:reduce){.glass,.glass-tint,.card,.card.alt,.method-card,.svc-row,.menu-btn,.btn-outline{background:#FFFFFF !important;-webkit-backdrop-filter:none !important;backdrop-filter:none !important}.glass-dark,.btn-ghost-light{background:var(--teal-dark) !important;-webkit-backdrop-filter:none !important;backdrop-filter:none !important}}@media (forced-colors:active){.btn,.menu-btn,.car-nav-btn{border:2px solid ButtonText !important}.photo-frame{border-color:CanvasText}}.dock{display:flex;flex-direction:column;gap:14px;margin:0 auto 36px;max-width:980px;text-align:left}.dock-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.dock-tile{border-radius:var(--r-md);padding:18px 20px 14px;display:flex;flex-direction:column;gap:2px}.dock-head{position:relative;display:flex;align-items:center;gap:10px;font-family:Archivo,sans-serif;font-weight:700;font-size:.8125rem;letter-spacing:.14em;color:var(--sand);margin-bottom:6px}.dock-link{position:relative;display:flex;align-items:center;min-height:44px;font-family:Fraunces,serif;font-size:1.25rem;color:var(--sand);border-radius:var(--r-sm);padding:0 10px;margin:0 -10px;overflow-wrap:anywhere;transition:background .25s ease,transform .3s var(--ease-spring)}.dock-link:hover{background:rgba(237,227,208,.16);transform:translateX(4px)}.dock-note{position:relative;font-size:.8125rem;color:var(--sand);opacity:.8;padding:0 0 4px}.dock-channel{position:relative;display:flex;align-items:center;gap:16px;border-radius:var(--r-md);padding:16px 22px;color:var(--sand);transition:transform .35s var(--ease-spring),background .25s ease}.dock-channel:hover{transform:translateY(-3px);background:rgba(27,75,73,.7)}.dock-chicon{position:relative;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:rgba(237,227,208,.14);flex:0 0 auto}.dock-chtext{position:relative;display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.dock-chtext strong{font-family:Fraunces,serif;font-weight:500;font-size:1.125rem}.dock-chtext span{font-size:.8125rem;opacity:.85}.dock-chout{position:relative;display:flex;flex:0 0 auto}.to-top{display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin:6px auto 0;border-radius:50%;border:1px solid rgba(237,227,208,.7);color:var(--sand);transition:transform .35s var(--ease-spring),background .25s ease}.to-top:hover{transform:translateY(-3px);background:rgba(237,227,208,.14)}@media (max-width:860px){.dock-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.dock-link,.dock-channel,.to-top,.num-btn{transition:none}}.num-btn{display:inline-flex;align-items:center;gap:10px;min-height:48px;width:fit-content;max-width:100%;padding:8px 18px;border-radius:var(--r-pill);background:rgba(27,75,73,.08);border:1px solid rgba(27,75,73,.4);color:var(--teal);font-family:Archivo,sans-serif;font-weight:600;font-size:1rem;overflow-wrap:anywhere;transition:background .25s ease,color .25s ease,transform .3s var(--ease-spring)}.num-btn:hover{background:var(--teal);color:var(--sand);transform:translateY(-2px)}.num-btn svg{flex:0 0 auto}@media (min-width:481px) and (max-width:1100px){.grid-4{grid-template-columns:1fr 1fr !important}}.glass{position:relative;background:rgba(255,255,255,.58);-webkit-backdrop-filter:blur(20px) saturate(170%);backdrop-filter:blur(20px) saturate(170%);border:1px solid rgba(255,255,255,.55);box-shadow:0 1px 1px rgba(255,255,255,.5) inset,0 14px 30px -18px rgba(43,41,38,.22)}.glass::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.35),rgba(255,255,255,0) 45%)}.btn{display:inline-flex;align-items:center;justify-content:center;font-family:Archivo,sans-serif;font-weight:600;font-size:0.9375rem;padding:14px 28px;border-radius:var(--r-pill);border:1.5px solid transparent;cursor:pointer;min-height:44px;transition:transform .35s var(--ease-spring),box-shadow .35s var(--ease-spring),background .25s ease}.btn-primary:hover{background:#843819;transform:translateY(-2px) scale(1.015);box-shadow:0 14px 30px -8px rgba(193,97,61,.6)}.nav-bar{transition:box-shadow .4s ease,border-radius .4s ease}.svc-row{position:relative;display:grid;grid-template-columns:1fr 1.4fr;gap:40px;padding:34px 32px;border-radius:var(--r-lg);background:rgba(255,255,255,.55);-webkit-backdrop-filter:blur(18px) saturate(160%);backdrop-filter:blur(18px) saturate(160%);border:1px solid rgba(255,255,255,.5);box-shadow:0 1px 1px rgba(255,255,255,.5) inset,0 12px 26px -18px rgba(43,41,38,.18);transition:transform .4s var(--ease-spring),box-shadow .4s var(--ease-fluid)}.svc-row::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.3),rgba(255,255,255,0) 45%)}.svc-row:hover{transform:translateY(-5px);box-shadow:0 22px 44px -22px rgba(43,41,38,.3)}.svc-row:hover .svc-icon{transform:scale(1.1);color:var(--teal)}.pill{font-family:Archivo,sans-serif;font-size:0.8125rem;color:var(--teal);background:var(--sand);display:inline-block;padding:5px 14px;border-radius:var(--r-pill);margin:4px 8px 0 0}.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ease-fluid),transform .8s var(--ease-fluid)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js .reveal{opacity:1;transform:none;transition:none}.btn,.menu-btn,.svc-row,.svc-icon,nav a.navlink::after{transition:none}}@media (max-width:860px){.svc-row{grid-template-columns:1fr !important;gap:20px !important;padding:26px 22px}.navlinks{display:none !important}.menu-btn{display:inline-flex !important}.desktop-cta{display:none !important}}.glass-dark{position:relative;background:rgba(19,55,53,.55);-webkit-backdrop-filter:blur(22px) saturate(160%);backdrop-filter:blur(22px) saturate(160%);border:1px solid rgba(237,227,208,.16);box-shadow:0 1px 1px rgba(237,227,208,.1) inset,0 10px 30px -14px rgba(0,0,0,.4)}.glass-dark::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(237,227,208,.14),rgba(237,227,208,0) 45%)}.method-card{position:relative;display:flex;flex-direction:column;gap:14px;background:rgba(255,255,255,.58);-webkit-backdrop-filter:blur(18px) saturate(170%);backdrop-filter:blur(18px) saturate(170%);border:1px solid rgba(255,255,255,.55);border-radius:var(--r-md);padding:30px 26px;box-shadow:0 1px 1px rgba(255,255,255,.5) inset,0 14px 30px -18px rgba(43,41,38,.2);transition:transform .45s var(--ease-spring),box-shadow .45s var(--ease-fluid);overflow:hidden}.method-card::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.35),rgba(255,255,255,0) 45%)}.method-card:hover{transform:translateY(-8px);box-shadow:0 26px 50px -22px rgba(43,41,38,.3)}.method-card:hover .m-icon{transform:scale(1.1);color:var(--teal)}.m-icon{transition:transform .35s var(--ease-spring),color .3s ease}.m-value{font-family:Fraunces,serif;font-size:1.1875rem;color:var(--charcoal)}.field{display:flex;flex-direction:column;gap:6px}.field label{font-family:Archivo,sans-serif;font-size:0.8125rem;font-weight:600;letter-spacing:.06em;color:var(--teal)}.field input,.field select,.field textarea{font-family:Archivo,sans-serif;font-size:1rem;padding:13px 14px;border:1px solid #6F695E;background:rgba(255,255,255,.7);color:var(--charcoal);border-radius:var(--r-sm);transition:border-color .2s ease}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--terracotta-ink)}.field select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:40px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232B2926' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:16px;cursor:pointer}.step-num{display:inline-block;background:var(--teal);color:var(--sand);font-family:Fraunces,serif;font-weight:700;font-size:1.25rem;padding:6px 16px;margin-bottom:14px;border-radius:var(--r-pill);box-shadow:0 6px 16px -8px rgba(27,75,73,.5)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js .reveal{opacity:1;transform:none;transition:none}.btn,.method-card,.m-icon,.menu-btn,nav a.navlink::after{transition:none}}@media (max-width:860px){.grid-2{grid-template-columns:1fr !important}.grid-3{grid-template-columns:1fr !important}.grid-4{grid-template-columns:1fr 1fr !important}.navlinks{display:none !important}.menu-btn{display:inline-flex !important}.desktop-cta{display:none !important}}@media (max-width:480px){.grid-4{grid-template-columns:1fr !important}}nav a.navlink{padding-left:6px;padding-right:6px}a[aria-label="Foyer home"]{min-height:44px;display:flex;align-items:center}@media (min-width:701px){.story-body{padding-right:76px}}@media (max-width:700px){.car-arrow{top:auto;bottom:10px;margin-top:0}.car-count{top:auto;bottom:22px;right:auto;left:50%;transform:translateX(-50%)}.ph-cap{bottom:72px}.ph-open{padding-bottom:70px}.story-body{padding-bottom:72px}}.consent{position:fixed;left:16px;right:16px;bottom:16px;z-index:150;max-width:760px;margin:0 auto;border-radius:22px;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:14px 20px;flex-wrap:wrap;color:var(--sand)}
.consent-text{position:relative;margin:0;flex:1 1 260px;font-size:.9375rem;line-height:1.5}
.consent-text a{color:var(--sand);text-decoration:underline}
.consent-actions{position:relative;display:flex;gap:10px;flex-wrap:wrap}
.legal{display:flex;flex-wrap:wrap;gap:0 18px;justify-content:center}
.legal a,.legal .linklike{color:var(--sand);text-decoration:underline;background:none;border:0;padding:0;font:inherit;cursor:pointer;min-height:44px;display:inline-flex;align-items:center}
.legal .linklike[hidden]{display:none}
.consent{font-family:Archivo,sans-serif;background:rgba(19,55,53,.97);-webkit-backdrop-filter:none;backdrop-filter:none}
.hero-grid{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(24px,5vw,72px);align-items:center;padding-top:clamp(40px,6vw,72px);padding-bottom:clamp(110px,10vw,140px)}
.hero-copy{display:flex;flex-direction:column;align-items:flex-start;gap:28px}
.hero-art{position:relative;height:clamp(400px,42vw,540px)}
.arch{position:absolute;box-sizing:border-box;padding:8px;border:1.5px solid var(--brass);border-radius:999px 999px 0 0}
.arch img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;border-radius:999px 999px 0 0}
.arch-lg{right:4%;top:0;width:min(66%,340px)}
.arch-sm{left:0;bottom:0;width:min(42%,200px);background:var(--sand);padding:6px}
.hero-chip{position:absolute;left:0;right:0;bottom:-6px;margin:0 auto;width:fit-content;max-width:100%;display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;background:rgba(19,55,53,.94);color:var(--sand);font-size:.8125rem;font-weight:600;letter-spacing:.04em;box-shadow:0 10px 24px -10px rgba(0,0,0,.5)}
@media (max-width:860px){.hero-grid{grid-template-columns:1fr}.hero-art{height:clamp(380px,100vw,470px);max-width:480px;width:100%;margin:0 auto}.arch-lg{right:8%;width:60%}.arch-sm{width:38%}}
.hero-copy .eyebrow,.hero-h1{text-wrap:balance}
.hero-chip{left:auto;right:4%;margin:0}
@media (max-width:860px){.hero-chip{right:auto;left:0;margin:0 auto;right:0}}
.benefit{font-weight:600;color:var(--teal);font-size:1rem;line-height:1.45;margin:0 0 8px}.hero-micro{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:.9375rem;color:var(--charcoal);text-decoration:underline;text-underline-offset:3px}.hero-micro svg{flex:0 0 auto;color:var(--teal)}.trust{background:#fff;border-bottom:1px solid var(--sand-dark)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px 28px;padding-top:26px;padding-bottom:26px}.trust-item{display:grid;grid-template-columns:26px 1fr;column-gap:12px;align-items:start}.trust-item svg{grid-row:1 / span 2;margin-top:2px}.trust-item strong{font-family:Archivo,sans-serif;font-size:.9375rem;color:var(--charcoal)}.trust-item span{font-size:.875rem;line-height:1.4;color:var(--charcoal)}@media (max-width:860px){.trust-grid{grid-template-columns:1fr 1fr}}@media (max-width:480px){.trust-grid{grid-template-columns:1fr}}.work-more{display:flex;align-items:center;gap:18px 24px;flex-wrap:wrap;margin-top:36px}.work-more p{margin:0;font-family:Fraunces,serif;font-size:1.375rem}.faq details{border-bottom:1px solid rgba(43,41,38,.25)}.faq details:first-child{border-top:1px solid rgba(43,41,38,.25)}.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:60px;padding:8px 2px;font-family:Fraunces,serif;font-size:1.1875rem}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"";flex:0 0 auto;width:10px;height:10px;border-right:2px solid var(--charcoal);border-bottom:2px solid var(--charcoal);transform:rotate(45deg);transition:transform .25s ease;margin-right:4px}.faq details[open] summary::after{transform:rotate(-135deg)}.faq details p{margin:0 0 20px;padding:0 2px;line-height:1.7;font-size:1rem;max-width:62ch}summary:focus-visible{outline:3px solid var(--terracotta-ink);outline-offset:3px}fieldset.chips{border:0;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}fieldset.chips legend{font-family:Archivo,sans-serif;font-size:.8125rem;font-weight:600;letter-spacing:.06em;color:var(--teal);padding:0;margin-bottom:10px}.chip{position:relative;display:inline-flex}.chip input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.chip span{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:999px;border:1px solid #6F695E;background:rgba(255,255,255,.7);font-size:.9375rem;color:var(--charcoal);transition:background .2s ease,color .2s ease,border-color .2s ease}.chip input:checked + span{background:var(--teal);color:var(--sand);border-color:var(--teal)}.chip input:focus-visible + span{outline:3px solid var(--terracotta-ink);outline-offset:3px}.form-error{margin:0;padding:12px 14px;border-radius:14px;background:#fff;border:1px solid #9E4527;color:#7a2f12;font-size:.9375rem;line-height:1.5}.quickbar{display:none}@media (max-width:700px){  .quickbar{position:fixed;left:0;right:0;bottom:0;z-index:90;display:flex;gap:10px;padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));background:rgba(255,255,255,.97);box-shadow:0 -8px 24px -14px rgba(43,41,38,.45)}  .quickbar .btn{flex:1;padding:12px 10px}  .quickbar.is-hidden{display:none}  body.consent-open .quickbar{display:none}  body{padding-bottom:72px}  body[data-page="/contact/"],body[data-page="/404.html"]{padding-bottom:0}}@media (prefers-reduced-motion:reduce){.faq summary::after{transition:none}}.glass-dark{background:rgba(19,55,53,.95)}.btn-outline{border-color:rgba(43,41,38,.5)}.btn-outline:hover{border-color:var(--terracotta)}.btn-ghost-light{border-color:rgba(237,227,208,.45)}.btn-ghost-light:hover{border-color:var(--sand)}h1,h2{text-wrap:balance}.legal a,.legal .linklike{padding:0 6px}nav[aria-label="Breadcrumb"] a{display:inline-flex;align-items:center;min-height:44px}.lb-full{color:var(--sand);text-decoration:underline;font-size:.9375rem;min-height:44px;display:inline-flex;align-items:center;padding:0 6px}
.ph-cap-side{left:16px;transform:none;bottom:16px}@media (min-width:701px){.story.pad{padding:14px 0 14px 68px}}@media (max-width:700px){.ph-cap-side{display:none}}@media (max-width:480px){.story-note{display:none}}/*APPLE-V2*/:root{--r-sm:12px;--r-md:20px;--r-lg:28px;--ease-apple:cubic-bezier(.28,.11,.32,1);--hair:rgba(43,41,38,.10);--sh1:0 1px 2px rgba(43,41,38,.04),0 6px 20px -10px rgba(43,41,38,.14);--sh2:0 2px 6px rgba(43,41,38,.05),0 24px 48px -24px rgba(43,41,38,.3)}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;-webkit-tap-highlight-color:transparent}body{font-feature-settings:"kern","liga","calt"}::selection{background:rgba(158,69,39,.22)}h1,h2,h3{letter-spacing:-.022em}h1{letter-spacing:-.03em}.eyebrow{text-transform:none;letter-spacing:0;font-weight:600;font-size:.9375rem}h2[id$="-title"]{font-size:clamp(2rem,4.6vw,3.25rem) !important;line-height:1.08;letter-spacing:-.026em}@media (min-width:861px){.hero-h1{font-size:clamp(3rem,5.2vw,4.5rem) !important;line-height:1.03 !important}}section#about,section#services,section#work,section#how,section#why,section#team,section#faq{padding-top:clamp(80px,11vw,148px) !important;padding-bottom:clamp(80px,11vw,148px) !important}#services>.wrap>.reveal:first-child,#how>.wrap>.reveal:first-child,#team>.wrap>.reveal:first-child,#work>.reveal:first-child,#why>.reveal:first-child{text-align:center;max-width:760px;margin-left:auto;margin-right:auto}#services>.wrap>.reveal:first-child h2,#how>.wrap>.reveal:first-child h2,#team>.wrap>.reveal:first-child h2,#work>.reveal:first-child h2,#why>.reveal:first-child h2{margin-bottom:clamp(28px,4vw,48px) !important}#team>.wrap>.reveal:first-child h2{margin-bottom:14px !important}#team>.wrap>.reveal:first-child p,#work>.reveal:first-child p{margin-left:auto;margin-right:auto}#how>.wrap>.reveal:last-child{text-align:center}#how .grid-3>div,#why .grid-3>div{text-align:center}#services .wrap>div[style*="margin-top:36px"]{justify-content:center;text-align:center}#services .wrap>div[style*="margin-top:36px"] p{font-style:normal;color:rgba(43,41,38,.82)}[data-page="/services/"] header>.wrap,[data-page="/contact/"] header>.wrap{text-align:center;max-width:820px !important}[data-page="/services/"] header>.wrap p,[data-page="/contact/"] header>.wrap p{margin-left:auto;margin-right:auto}@media (max-width:860px){.hero-art{margin-bottom:72px}.hero-chip{bottom:-58px !important;font-size:.75rem;padding:0 14px;text-align:center}}/* buttons: capsule, tactile */.btn{min-height:48px;padding:12px 26px;border:0;font-size:1rem;font-weight:600;letter-spacing:0;transition:transform .45s var(--spring),background .25s var(--ease-apple),box-shadow .3s var(--ease-apple),color .2s}.btn:active{transform:scale(.97) !important;transition-duration:.12s}.btn-primary{background:var(--terracotta-ink);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 8px 20px -10px rgba(158,69,39,.65)}.btn-primary:hover{background:#8A3B1F;transform:translateY(-1px);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 12px 26px -10px rgba(158,69,39,.7)}.btn-outline{background:rgba(43,41,38,.07);border-color:transparent;color:var(--charcoal);-webkit-backdrop-filter:none;backdrop-filter:none}.btn-outline:hover{background:rgba(43,41,38,.12);border-color:transparent;transform:translateY(-1px)}.btn-ghost-light{background:rgba(255,255,255,.14);border-color:transparent;color:var(--sand)}.btn-ghost-light:hover{background:rgba(255,255,255,.22);border-color:transparent}.link-more{display:inline-flex;align-items:center;gap:4px;min-height:44px;color:var(--terracotta-ink);font-weight:600;font-size:1rem;letter-spacing:0;margin-top:4px}.link-more svg{transition:transform .35s var(--spring)}.link-more:hover{text-decoration:underline;text-underline-offset:4px}.link-more:hover svg{transform:translateX(3px)}/* WhatsApp capsule */.wa-chip{position:relative;display:inline-flex;align-items:center;gap:14px;max-width:100%;padding:8px 20px 8px 8px;border-radius:999px;background:rgba(255,255,255,.74);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border:1px solid rgba(255,255,255,.75);box-shadow:var(--sh1),inset 0 1px 0 rgba(255,255,255,.8);color:var(--charcoal);text-decoration:none;transition:transform .45s var(--spring),box-shadow .35s var(--ease-apple),background .25s}.wa-chip:hover{transform:translateY(-2px);background:rgba(255,255,255,.94);box-shadow:var(--sh2),inset 0 1px 0 #fff}.wa-chip:active{transform:scale(.98);transition-duration:.12s}.wa-badge{flex:0 0 auto;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;color:var(--sand);background:linear-gradient(160deg,#2a6360 0%,#1B4B49 60%,#143836 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 4px 10px -4px rgba(27,75,73,.6)}.wa-text{display:flex;flex-direction:column;gap:1px;min-width:0;text-align:left}.wa-title{font-weight:600;font-size:1rem;letter-spacing:0;line-height:1.25}.wa-sub{font-size:.875rem;color:rgba(43,41,38,.74);line-height:1.3;font-variant-numeric:tabular-nums}.wa-chev{flex:0 0 auto;color:rgba(43,41,38,.45);transition:transform .35s var(--spring),color .2s}.wa-chip:hover .wa-chev{transform:translateX(3px);color:var(--charcoal)}@media (max-width:480px){.wa-chip{width:100%}.wa-chev{margin-left:auto}}/* navigation: liquid-glass bar, pill states */.nav-bar{height:60px !important;background:rgba(255,255,255,.72);-webkit-backdrop-filter:saturate(180%) blur(24px);backdrop-filter:saturate(180%) blur(24px);border:1px solid rgba(255,255,255,.7);box-shadow:inset 0 1px 0 rgba(255,255,255,.85),0 1px 0 var(--hair),0 10px 30px -16px rgba(43,41,38,.22)}.navlinks{gap:2px !important}nav a.navlink{padding:0 14px;min-height:44px;font-size:.9375rem;font-weight:500;color:rgba(43,41,38,.78);border-radius:999px;transition:background .25s var(--ease-apple),color .2s}nav a.navlink::after{display:none}nav a.navlink:hover{color:var(--charcoal);background:rgba(43,41,38,.05)}nav a.navlink.is-active,nav a.navlink[aria-current]{color:var(--charcoal);background:rgba(43,41,38,.08)}.desktop-cta{min-height:44px !important;padding:0 18px !important;font-size:.9375rem !important}.menu-btn{background:rgba(43,41,38,.06);border-color:transparent}@media (max-width:860px){  .mobile-panel{border-radius:var(--r-lg) !important;padding:6px 22px 20px !important;background:rgba(255,255,255,.88);-webkit-backdrop-filter:saturate(180%) blur(28px);backdrop-filter:saturate(180%) blur(28px);border:1px solid rgba(255,255,255,.8);box-shadow:var(--sh2)}  .mobile-panel a{min-height:56px;font-size:1.25rem;font-weight:500;letter-spacing:-.015em;color:var(--charcoal);border-bottom:1px solid var(--hair);display:flex;align-items:center}}/* surfaces */.card{background:#fff;border:1px solid var(--hair);border-radius:var(--r-lg);box-shadow:var(--sh1);-webkit-backdrop-filter:none;backdrop-filter:none;transition:transform .55s var(--spring),box-shadow .4s var(--ease-apple)}.card::before{display:none}.card:hover{transform:translateY(-6px);box-shadow:var(--sh2)}.card.alt{background:#fff}.card.alt:hover{transform:none;box-shadow:var(--sh1)}.team-card{background:#fff !important;border:1px solid var(--hair);border-radius:var(--r-lg);box-shadow:var(--sh1) !important;transition:transform .55s var(--spring),box-shadow .4s var(--ease-apple)}.team-card:hover{transform:translateY(-6px);box-shadow:var(--sh2) !important}.car-wrap{border-radius:var(--r-md);border:1px solid var(--hair);background:#F6F0E4}.glass-dark{border-radius:var(--r-lg)}@supports (corner-shape:squircle){.card,.team-card,.car-wrap,.glass-dark,.dock-tile,.dock-channel,.method-card,.consent,.mobile-panel{corner-shape:squircle;border-radius:calc(var(--r-lg) * 1.45)}.car-wrap{border-radius:calc(var(--r-md) * 1.45)}}.trust{background:#fff}.trust-item strong{letter-spacing:0}/* forms */.field label,fieldset.chips legend{letter-spacing:0;font-size:.875rem;font-weight:600;color:rgba(43,41,38,.78)}.field input,.field select,.field textarea,#contact-form input,#contact-form textarea{background-color:#fff;border:1px solid rgba(43,41,38,.28);border-radius:14px;padding:14px 16px;font-size:1rem;transition:border-color .2s var(--ease-apple),box-shadow .25s var(--ease-apple)}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--terracotta-ink);box-shadow:0 0 0 4px rgba(158,69,39,.16)}.chip span{border-color:rgba(43,41,38,.28);background-color:#fff;font-weight:500;transition:background .25s var(--ease-apple),color .2s,border-color .2s,transform .3s var(--spring)}.chip:active span{transform:scale(.97)}.dock-head{letter-spacing:0;font-size:.9375rem}.dock-link:hover{transform:none}.faq summary{font-weight:500;letter-spacing:-.015em}/* mobile quick bar: translucent tab bar */@media (max-width:700px){.quickbar{background:rgba(255,255,255,.8);-webkit-backdrop-filter:saturate(180%) blur(24px);backdrop-filter:saturate(180%) blur(24px);border-top:1px solid var(--hair);box-shadow:none}.quickbar .btn{min-height:48px}}/* motion: page transitions and gentle scroll depth, only where supported and wanted */@view-transition{navigation:auto}::view-transition-old(root),::view-transition-new(root){animation-duration:.3s;animation-timing-function:var(--ease-apple)}@keyframes pxa{to{translate:0 -36px}}@keyframes pxb{to{translate:0 30px}}@supports (animation-timeline:scroll()){@media (prefers-reduced-motion:no-preference) and (min-width:861px){  .arch-lg.hero-anim{animation:fadeUp .8s cubic-bezier(.2,.7,.3,1) .2s forwards,pxa linear both;animation-timeline:auto,scroll(root);animation-range:normal,0 90vh}  .arch-sm.hero-anim{animation:fadeUp .8s cubic-bezier(.2,.7,.3,1) .35s forwards,pxb linear both;animation-timeline:auto,scroll(root);animation-range:normal,0 90vh}}}@media (prefers-reduced-motion:reduce){@view-transition{navigation:none}.card,.team-card,.btn,.wa-chip,.link-more svg,.wa-chev{transition:none}.card:hover,.team-card:hover,.wa-chip:hover{transform:none}}@media (prefers-contrast:more){.btn-outline{background:#fff;border:2px solid var(--charcoal)}.wa-chip{background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none;border:2px solid var(--charcoal)}.nav-bar{background:#fff}}