:root{--navy:#1f2f45;--navy-soft:#334354;--champagne:#e7d4a4;--champagne-deep:#d7ba77;--paper:#fff;--mist:#f7f6f2;--ink:#17263b;--line:rgba(31,47,69,.14);--max:1220px;--sans:"Avenir Next",Avenir,"Century Gothic","Trebuchet MS",Arial,sans-serif;--serif:Georgia,"Times New Roman",serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}button,summary{font:inherit}.site-header{padding:36px 24px 0;background:#fff}.header-inner{width:min(var(--max),100%);margin:auto;text-align:center}.brand{display:inline-block;width:310px;max-width:65vw}.brand img{object-fit:contain}.desktop-nav{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:22px;padding-bottom:28px;border-bottom:14px solid var(--champagne)}.desktop-nav a{padding:9px 18px;color:var(--navy);font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;transition:.2s}.desktop-nav a:hover,.desktop-nav a.active{background:var(--navy);color:#fff}.mobile-menu{display:none}.hero{width:min(var(--max),calc(100% - 48px));margin:22px auto 0}.champagne-rule{display:none}.hero-gallery{display:grid;grid-template-columns:1fr 2fr;gap:4px;height:500px}.hero-gallery figure{margin:0;overflow:hidden}.hero-gallery img{transition:transform .6s ease}.hero-gallery figure:hover img{transform:scale(1.015)}.hero-intro{padding:58px 24px 72px;text-align:center}.mini-brand{margin:0 0 8px;color:#171717;font-family:var(--serif);font-size:42px;font-weight:700;letter-spacing:-.04em}.hero-intro h1{margin:0;color:var(--navy);font-size:18px;font-weight:500;letter-spacing:.04em}.three-squares{display:flex;justify-content:center;gap:3px;margin-top:27px}.three-squares i{width:14px;height:14px;background:var(--champagne)}.section{width:min(var(--max),calc(100% - 48px));margin:auto;padding:88px 0}.story{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(280px,.7fr);gap:80px;padding-top:44px;border-top:1px solid var(--line)}.story-main{max-width:780px}.story h2{margin:0 0 26px;color:var(--champagne-deep);font-family:var(--serif);font-size:clamp(31px,3.2vw,44px);font-weight:400;line-height:1.2}.story h2:not(:first-child){margin-top:62px}.story p{margin:0 0 22px;font-size:17px;line-height:1.7}.story .lead{font-size:20px;font-weight:600;line-height:1.55}.consultation-card{align-self:start;position:sticky;top:24px;padding:44px 38px;background:var(--navy-soft);color:#fff}.consultation-card>span,.section-heading>p,.closing-label{display:block;margin-bottom:18px;color:var(--champagne);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.consultation-card h3{margin:0 0 18px;font-family:var(--serif);font-size:31px;font-weight:400;line-height:1.25}.consultation-card p{margin:0 0 30px;color:rgba(255,255,255,.78);font-size:15px}.button{display:flex;align-items:center;justify-content:space-between;min-height:50px;padding:0 19px;background:var(--navy);color:#fff;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:.2s}.button.light{background:var(--champagne);color:var(--navy)}.button:hover{transform:translateY(-2px);filter:brightness(.97)}.services{border-top:1px solid var(--line)}.section-heading{display:grid;grid-template-columns:.7fr 1.3fr;gap:50px;align-items:start;margin-bottom:58px}.section-heading>p{margin-top:12px;color:var(--champagne-deep)}.section-heading h2,.closing h2{max-width:720px;margin:0;color:var(--navy);font-family:var(--serif);font-size:clamp(38px,4.5vw,58px);font-weight:400;line-height:1.12}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service-grid article{padding:35px 34px;border-right:1px solid var(--line)}.service-grid article:first-child{padding-left:0}.service-grid article:last-child{border:0}.service-grid span{color:var(--champagne-deep);font-family:var(--serif);font-size:14px}.service-grid h3{margin:18px 0 14px;color:var(--navy);font-size:19px}.service-grid p{margin:0;color:#536070;font-size:14px}.closing{display:grid;grid-template-columns:1fr 1fr;gap:80px;background:var(--mist);width:100%;max-width:none;padding-left:max(24px,calc((100vw - var(--max))/2));padding-right:max(24px,calc((100vw - var(--max))/2))}.closing-label{color:var(--champagne-deep)}.closing p{max-width:570px;margin:0 0 25px;font-size:17px}.text-link{display:inline-flex;gap:35px;align-items:center;padding-bottom:5px;border-bottom:2px solid var(--champagne-deep);font-size:12px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.delivery-strip{display:flex;justify-content:center;align-items:center;gap:24px;padding:26px 24px;color:var(--navy);font-size:13px;text-align:center}.delivery-strip p{margin:0}.delivery-strip>span{width:4px;height:4px;border-radius:50%;background:var(--champagne-deep)}.site-footer{display:grid;grid-template-columns:1fr 1.4fr auto;align-items:center;gap:50px;padding:45px max(24px,calc((100vw - var(--max))/2)) 22px;background:var(--champagne-deep);color:var(--navy)}.footer-brand strong,.footer-brand small{display:block}.footer-brand strong{font-family:var(--serif);font-size:27px}.footer-brand small{font-size:10px;letter-spacing:.1em;text-transform:uppercase}.footer-contact{display:flex;flex-direction:column;align-items:flex-start;font-size:13px;line-height:1.55}.footer-contact>span{margin-bottom:6px;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.footer-contact a{text-decoration:underline;text-underline-offset:3px}.social-links{display:flex;gap:10px}.social{display:grid;place-items:center;width:38px;height:38px;background:#fff}.social svg{width:20px;height:20px}.facebook{color:#1877f2}.twitter{color:#111}.facebook svg,.twitter svg{fill:currentColor}.instagram{background:radial-gradient(circle at 32% 100%,#fed373 0 24%,#f15245 45%,#d92e7f 66%,#9b36b7 82%,#515ecf 100%)}.instagram svg{fill:none;stroke:#fff;stroke-width:1.8}.instagram .dot{fill:#fff;stroke:none}.copyright{grid-column:1/-1;margin:25px 0 0;padding-top:18px;border-top:1px solid rgba(31,47,69,.2);font-size:10px;text-align:center}.button:focus-visible,.desktop-nav a:focus-visible,.mobile-menu a:focus-visible,.social:focus-visible,.text-link:focus-visible{outline:3px solid rgba(31,47,69,.35);outline-offset:3px}
@media(max-width:900px){.site-header{padding-top:22px}.brand{width:250px}.desktop-nav{display:none}.header-inner{display:flex;align-items:center;justify-content:space-between;padding-bottom:20px;border-bottom:10px solid var(--champagne)}.mobile-menu{display:block;position:relative}.mobile-menu summary{display:grid;place-content:center;gap:5px;width:48px;height:48px;border:1px solid var(--champagne-deep);background:#fff;cursor:pointer;list-style:none}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary span{display:block;width:23px;height:2px;background:var(--navy);transition:.2s}.mobile-menu[open] summary span:nth-child(1){transform:translateY(7px) rotate(45deg)}.mobile-menu[open] summary span:nth-child(2){opacity:0}.mobile-menu[open] summary span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-menu nav{position:fixed;z-index:20;top:111px;left:0;right:0;padding:12px 24px 24px;background:rgba(255,255,255,.98);box-shadow:0 18px 35px rgba(31,47,69,.14);text-align:left}.mobile-menu nav a{display:block;padding:15px 4px;border-bottom:1px solid var(--line);color:var(--navy);font-size:15px;font-weight:600;text-transform:uppercase}.mobile-menu nav a:last-child{border:0}.hero{margin-top:18px}.hero-gallery{height:430px}.story{grid-template-columns:1fr;gap:55px}.consultation-card{position:static}.service-grid{grid-template-columns:1fr}.service-grid article,.service-grid article:first-child{padding:28px 0;border-right:0;border-bottom:1px solid var(--line)}.service-grid article:last-child{border-bottom:0}.closing{grid-template-columns:1fr;gap:35px}.site-footer{grid-template-columns:1fr 1fr}.social-links{justify-self:end}.copyright{grid-column:1/-1}}
@media(max-width:620px){body{font-size:15px}.site-header{padding:16px 18px 0}.brand{width:185px}.header-inner{padding-bottom:14px;border-bottom-width:7px}.mobile-menu summary{width:44px;height:44px}.mobile-menu nav{top:83px;padding-left:20px;padding-right:20px}.hero{width:calc(100% - 36px);margin-top:14px}.hero-gallery{grid-template-columns:1fr;height:440px}.hero-secondary{display:none}.hero-intro{padding:38px 12px 52px}.mini-brand{font-size:32px}.hero-intro h1{font-size:16px;line-height:1.45}.section{width:calc(100% - 40px);padding:64px 0}.story{padding-top:20px}.story h2{font-size:31px}.story h2:not(:first-child){margin-top:48px}.story .lead{font-size:18px}.story p{font-size:15px}.consultation-card{padding:34px 27px}.consultation-card h3{font-size:27px}.section-heading{grid-template-columns:1fr;gap:10px;margin-bottom:35px}.section-heading h2,.closing h2{font-size:36px}.service-grid h3{font-size:18px}.closing{width:100%;padding:62px 20px}.delivery-strip{flex-direction:column;gap:8px;padding:24px 20px}.delivery-strip>span{display:none}.site-footer{grid-template-columns:1fr;gap:25px;padding:36px 20px 20px;text-align:center}.footer-contact{align-items:center}.social-links{justify-self:center}.copyright{grid-column:auto;margin-top:8px}.hero-gallery figure:hover img{transform:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-gallery img,.button,.mobile-menu summary span{transition:none}}
.nav-group{position:relative}.nav-group>a{display:block}.nav-group>a::after{content:"";display:inline-block;width:6px;height:6px;margin:0 0 3px 8px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg)}.nav-dropdown{visibility:hidden;opacity:0;position:absolute;z-index:30;top:calc(100% + 1px);left:50%;min-width:224px;padding:9px;background:#fff;border-top:3px solid var(--champagne-deep);box-shadow:0 14px 34px rgba(31,47,69,.16);transform:translate(-50%,7px);transition:opacity .18s,transform .18s,visibility .18s}.nav-group:hover .nav-dropdown,.nav-group:focus-within .nav-dropdown{visibility:visible;opacity:1;transform:translate(-50%,0)}.desktop-nav .nav-dropdown a{display:block;padding:11px 14px;text-align:left;white-space:nowrap}.desktop-nav .nav-dropdown a:hover,.desktop-nav .nav-dropdown a:focus-visible,.desktop-nav .nav-dropdown a.active{background:var(--mist);color:var(--navy)}.mobile-menu .mobile-section{padding:18px 4px 7px;color:var(--champagne-deep);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.mobile-menu .sub-link{padding-left:18px;font-size:13px;text-transform:none}.mobile-menu nav .active{color:var(--champagne-deep)}
@media(max-width:1120px){.desktop-nav{display:none}.header-inner{display:flex;align-items:center;justify-content:space-between;padding-bottom:20px;border-bottom:10px solid var(--champagne)}.mobile-menu{display:block;position:relative}.mobile-menu summary{display:grid;place-content:center;gap:5px;width:48px;height:48px;border:1px solid var(--champagne-deep);background:#fff;cursor:pointer;list-style:none}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary span{display:block;width:23px;height:2px;background:var(--navy);transition:.2s}.mobile-menu[open] summary span:nth-child(1){transform:translateY(7px) rotate(45deg)}.mobile-menu[open] summary span:nth-child(2){opacity:0}.mobile-menu[open] summary span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-menu nav{position:fixed;z-index:40;top:111px;left:0;right:0;max-height:calc(100dvh - 111px);overflow-y:auto;overscroll-behavior:contain;padding:12px 24px 28px;background:rgba(255,255,255,.99);box-shadow:0 18px 35px rgba(31,47,69,.14);text-align:left}.mobile-menu nav a{display:block;padding:14px 4px;border-bottom:1px solid var(--line);color:var(--navy);font-size:14px;font-weight:600;text-transform:uppercase}.mobile-menu nav a:last-child{border:0}.mobile-menu .sub-link{padding-left:18px;font-size:13px;text-transform:none}}
@media(max-width:620px){.mobile-menu nav{top:83px;max-height:calc(100dvh - 83px)}}
.mobile-menu .mobile-nav-group>summary{place-content:normal;gap:0}.mobile-menu .mobile-nav-group>summary>span{display:inline;width:auto;height:auto;background:transparent;transform:none!important;transition:none}
.mobile-menu .mobile-nav-group{border-bottom:1px solid var(--line)}.mobile-menu .mobile-nav-group>summary{display:flex;align-items:center;justify-content:space-between;width:100%;height:auto;padding:14px 4px;border:0;background:transparent;color:var(--navy);font-size:14px;font-weight:600;letter-spacing:normal;text-transform:uppercase;cursor:pointer;list-style:none;transition:color .18s,background-color .18s,padding .18s}.mobile-menu .mobile-nav-group>summary::-webkit-details-marker{display:none}.mobile-menu .mobile-nav-group>summary i{width:9px;height:9px;margin-right:5px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform .18s}.mobile-menu .mobile-nav-group[open]>summary i{transform:translateY(3px) rotate(225deg)}.mobile-menu .mobile-nav-group>summary.active{color:var(--champagne-deep)}.mobile-menu .mobile-submenu{margin:0 0 8px;padding:2px 0 2px 18px;background:#fff;border-left:2px solid var(--champagne-deep)}.mobile-menu nav .mobile-submenu a{position:relative;padding:10px 12px;border-bottom:1px solid rgba(31,47,69,.09);font-size:13px;font-weight:500;text-transform:none;transition:color .18s,background-color .18s,padding-left .18s}.mobile-menu nav .mobile-submenu a:last-child{border:0}.mobile-menu nav .mobile-submenu .overview-link{color:var(--navy);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.mobile-menu nav .mobile-submenu a.active{color:var(--champagne-deep)}.mobile-menu nav>a{transition:color .18s,background-color .18s,padding-left .18s}.mobile-menu nav>a:hover,.mobile-menu nav>a:focus-visible,.mobile-menu .mobile-nav-group>summary:hover,.mobile-menu .mobile-nav-group>summary:focus-visible{padding-left:12px;background:#f5f6f7;color:var(--navy)}.mobile-menu nav .mobile-submenu a:hover,.mobile-menu nav .mobile-submenu a:focus-visible{padding-left:18px;background:#f5f6f7;color:var(--navy)}.mobile-menu nav>a:active,.mobile-menu .mobile-nav-group>summary:active,.mobile-menu nav .mobile-submenu a:active{background:#edf0f2}
.site-footer{display:block;padding:0;background:var(--navy);color:#fff}.footer-main{display:grid;grid-template-columns:1.35fr .65fr .9fr auto;gap:55px;padding:60px max(24px,calc((100vw - var(--max))/2)) 45px}.footer-brand strong{font-size:31px}.footer-brand p{max-width:370px;margin:14px 0 0;color:rgba(255,255,255,.62);font-size:13px}.footer-nav,.footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.footer-nav>span,.footer-contact>span{margin-bottom:8px;color:var(--champagne);font-size:9px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.footer-nav a,.footer-contact a{color:rgba(255,255,255,.78);font-size:12px;text-decoration:none}.footer-nav a:hover,.footer-contact a:hover{color:#fff}.footer-button{display:flex!important;justify-content:space-between;width:100%;min-width:180px;margin-top:13px!important;padding:11px 14px;background:var(--champagne);color:var(--navy)!important;font-weight:700}.footer-main .social-links{align-self:start}.footer-bottom{display:flex;justify-content:space-between;padding:17px max(24px,calc((100vw - var(--max))/2));border-top:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.48);font-size:9px;letter-spacing:.08em;text-transform:uppercase}
@media(max-width:900px){.footer-main{grid-template-columns:1fr 1fr}.footer-main .social-links{justify-self:start}.footer-bottom{flex-wrap:wrap;gap:6px 20px}}
@media(min-width:621px) and (max-width:900px){.footer-main{grid-template-columns:1fr 1fr;gap:0 54px;padding:46px 32px 35px}.footer-main>.footer-brand{grid-column:1/-1;padding-bottom:28px;margin-bottom:4px;border-bottom:1px solid rgba(255,255,255,.12)}.footer-brand p{max-width:560px;font-size:15px}.footer-nav,.footer-contact{padding:25px 0 18px}.footer-nav>span,.footer-contact>span{font-size:10px}.footer-nav a,.footer-contact a{display:flex;align-items:center;min-height:42px;font-size:15px}.footer-button{min-height:50px!important;margin-top:13px!important;font-size:13px!important}.footer-main>.social-links{grid-column:1/-1;width:100%;padding-top:22px;border-top:1px solid rgba(255,255,255,.12)}.footer-main .social{width:46px;height:46px}.footer-bottom{padding:19px 32px;font-size:10px}.footer-bottom a{font-size:11px}}
@media(max-width:620px){.footer-main{grid-template-columns:1fr;gap:29px;padding:43px 20px 34px;text-align:left}.footer-contact{align-items:flex-start}.footer-main .social-links{justify-self:start}.footer-bottom{display:block;padding:16px 20px;text-align:left}.footer-bottom span{display:block;margin:3px 0}}
@media(max-width:620px){.footer-main{gap:0;padding:34px 20px 28px}.footer-main>div{width:100%;padding:25px 0;border-bottom:1px solid rgba(255,255,255,.12)}.footer-main>div:first-child{padding-top:0}.footer-main>div:last-child{border-bottom:0}.footer-brand strong{font-size:30px;line-height:1.2}.footer-brand small{font-size:11px}.footer-brand p{max-width:none;font-size:15px;line-height:1.65}.footer-nav,.footer-contact{gap:0}.footer-nav>span,.footer-contact>span{margin-bottom:10px;font-size:11px}.footer-nav a,.footer-contact a{display:flex;align-items:center;width:100%;min-height:44px;padding:8px 0;color:rgba(255,255,255,.9);font-size:16px;line-height:1.35}.footer-button{min-height:52px!important;margin-top:16px!important;padding:12px 16px!important;font-size:14px!important}.footer-main .social-links{display:flex;width:100%;padding-top:22px}.footer-main .social{width:48px;height:48px}.footer-main .social svg{width:23px;height:23px}.footer-bottom{padding:21px 20px;font-size:11px;line-height:1.7}.footer-bottom span{margin:4px 0}.footer-bottom a{display:inline-flex;align-items:center;min-height:44px;margin-top:7px;font-size:13px;color:rgba(255,255,255,.75)}}
@media(max-width:1120px){.mobile-menu{z-index:50}.mobile-menu>summary{position:relative;z-index:60}.mobile-menu nav{z-index:50}}
@media(max-width:1120px){.mobile-menu nav{position:absolute;top:calc(100% + 20px);right:-24px;left:auto;width:100vw;max-height:calc(100dvh - 111px)}}
@media(max-width:620px){.mobile-menu nav{top:calc(100% + 14px);right:-18px;max-height:calc(100dvh - 83px)}}
.hero-gallery{display:block;position:relative;height:500px;background:var(--navy)}.hero-gallery .hero-slide{position:absolute;inset:0;margin:0;opacity:0;transition:opacity 1s ease;pointer-events:none}.hero-gallery .hero-slide.active{z-index:1;opacity:1}.hero-gallery .hero-slide img{width:100%;height:100%;object-fit:cover}.hero-gallery .hero-slide:hover img{transform:none}@media(max-width:900px){.hero-gallery{height:430px}}@media(max-width:620px){.hero-gallery{height:440px}}
.hero-gallery .hero-slide{display:block;background:#fff}.hero-gallery .hero-slide img{min-width:0;object-position:center}
.admin-link{display:inline-flex;align-items:center;padding-bottom:2px;border-bottom:1px solid rgba(255,255,255,.28);color:rgba(255,255,255,.62);transition:color .2s,border-color .2s}.admin-link:hover{border-color:#fff;color:#fff}@media(max-width:620px){.admin-link{margin-top:10px}}
.hero-gallery{height:550px;background:#fff}.hero-gallery .hero-slide img{object-fit:cover;background:#fff}
@media(max-width:620px){.hero-gallery{height:460px;background:#fff}.hero-gallery .hero-slide img{object-fit:cover;background:#fff}}
.home-testimonials{border-top:1px solid var(--line)}.home-testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-bottom:34px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.home-testimonial-grid blockquote{margin:0;padding:36px 32px;border-right:1px solid var(--line);color:var(--navy);font-family:var(--serif);font-size:20px;line-height:1.55}.home-testimonial-grid blockquote:last-child{border-right:0}.home-testimonial-grid cite{display:block;margin-top:22px;color:var(--champagne-deep);font-family:var(--sans);font-size:10px;font-style:normal;font-weight:700;letter-spacing:.1em;text-transform:uppercase}@media(max-width:760px){.home-testimonial-grid{grid-template-columns:1fr}.home-testimonial-grid blockquote{padding:27px 0;border-right:0;border-bottom:1px solid var(--line)}.home-testimonial-grid blockquote:last-child{border-bottom:0}}
.hero-controls{position:absolute;z-index:3;right:18px;bottom:18px;display:flex;gap:8px}.hero-controls button{display:grid;place-items:center;width:50px;height:50px;border:1px solid rgba(255,255,255,.72);background:rgba(31,47,69,.88);color:#fff;font-size:31px;line-height:1;cursor:pointer;backdrop-filter:blur(5px);transition:background .2s,transform .2s}.hero-controls button:hover,.hero-controls button:focus-visible{background:var(--champagne-deep);color:var(--navy);transform:translateY(-2px)}.hero-controls button:focus-visible{outline:3px solid #fff;outline-offset:2px}@media(max-width:620px){.hero-controls{right:11px;bottom:11px;gap:6px}.hero-controls button{width:44px;height:44px;font-size:27px}}
