@font-face{font-family:Bebas;src:url('assets/fonts/bebas-neue.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Montserrat;src:url('assets/fonts/montserrat-regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Montserrat;src:url('assets/fonts/montserrat-medium.ttf') format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:Montserrat;src:url('assets/fonts/montserrat-semibold.ttf') format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:Montserrat;src:url('assets/fonts/montserrat-bold.ttf') format('truetype');font-weight:700;font-display:swap}
:root{--navy:#071638;--gold:#C5A16A;--ivory:#F4F0E8;--sand:#E8DECE;--muted:#63738D}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--navy);color:var(--ivory);font-family:Montserrat,Arial,sans-serif;font-size:16px;line-height:1.4}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit}p,h1,h2,h3{margin:0}h1,h2{font-family:Bebas,'Arial Narrow',sans-serif;font-weight:400;line-height:.98}h3{font-weight:700;line-height:1.12;text-transform:uppercase;font-size:19px}p{line-height:1.35}.wrap{width:min(1200px,calc(100% - 72px));margin-inline:auto}.skip{position:fixed;top:-100px;left:16px;padding:12px;background:var(--ivory);color:var(--navy);z-index:100}.skip:focus{top:16px}:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.top{position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 60%,#0b1c40 0,#03132f 75%)}.top-curve{position:absolute;left:26%;top:-250px;width:420px;height:420px;border-radius:34% 0 68% 45%;transform:rotate(32deg);background:linear-gradient(110deg,var(--ivory),var(--sand));pointer-events:none}.header{display:flex;align-items:center;justify-content:space-between;position:relative;z-index:5;gap:24px;height:132px}.brand{width:235px;display:block;flex-shrink:0}.brand img{height:auto;width:100%}.header nav{display:flex;align-items:center;gap:22px;position:relative;z-index:1;background:var(--navy);border-radius:28px;padding:12px 18px;font-size:14px;font-weight:500}.header nav a+a::before{content:'·';display:inline-block;color:var(--gold);margin-right:22px}.header nav a:hover{color:var(--gold)}.menu-toggle{display:none}.hero{min-height:540px;position:relative;padding-block:36px 48px}.hero-copy{width:48%;position:relative;z-index:2;padding-left:40px}.hero h1{font-size:clamp(68px,7.5vw,106px);letter-spacing:.4px}.hero-copy p{max-width:390px;margin:20px 0 28px;font-size:18px}.button{display:inline-flex;align-items:center;justify-content:center;border:1.5px solid var(--gold);color:#E7BD85;border-radius:30px;padding:12px 24px;font-size:14px;text-transform:uppercase;letter-spacing:.4px;font-weight:700;min-height:44px;line-height:1.2;transition:background .18s,color .18s;text-align:center}.button:hover{background:var(--gold);color:var(--navy)}.hero-photo{position:absolute;width:63%;height:570px;right:-11%;top:0;border-radius:48% 44% 0 62% / 42% 40% 0 66%;overflow:hidden;border:1px solid var(--gold);transform:rotate(-8deg)}.hero-photo img{width:100%;height:100%;object-fit:cover;transform:rotate(8deg) scale(1.18);filter:none}.hero-gold{position:absolute;right:-230px;bottom:-95px;height:245px;width:625px;transform:rotate(-20deg);border-radius:80% 0 0 0;background:linear-gradient(110deg,#d7bd91,#c5a16a);z-index:1;pointer-events:none}.about{position:relative;overflow:hidden;min-height:490px;background:linear-gradient(130deg,#071638,#101e3a)}.about-photo{position:absolute;left:0;top:0;width:48%;height:100%;clip-path:polygon(0 0,100% 0,83% 8%,68% 21%,55% 42%,43% 62%,27% 78%,0 95%)}.about-photo img{height:100%;width:100%;object-fit:cover;filter:none}.about-laurel{position:absolute;left:30%;bottom:-48px;width:210px;height:310px;opacity:.52;transform:rotate(-10deg)}.about-layout{padding:35px 5px 40px;display:flex;justify-content:flex-end;position:relative}.about-card{width:56%;min-height:405px;padding:60px 70px;border-radius:32% 15% 18% 34% / 48% 20% 18% 49%;background:linear-gradient(125deg,var(--ivory),var(--sand));color:var(--navy)}.about-card h2{font-size:68px;margin-bottom:20px}.about-card p{font-size:18px;line-height:1.4}.why{padding-top:50px;color:var(--navy);border-radius:62px 62px 0 0;background:linear-gradient(#f4f0e8b0,#f4f0e840),url('assets/images/mountains.webp') center top/cover no-repeat;text-align:center;overflow:hidden}.why h2{font-size:72px}.rule{width:102px;height:2px;background:var(--gold);margin:25px auto}.why-intro{font-size:19px;margin-bottom:95px}.benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:1280px;margin:auto;background:linear-gradient(105deg,#d8bd8f,#c8a777);border-radius:150px 150px 0 0;padding:26px 65px 34px;gap:60px}.benefits article{position:relative;padding-inline:16px}.benefits article+article:before{content:'';height:150px;width:1px;background:#aa874f;position:absolute;left:-30px;top:35px}.benefits img{height:95px;width:100px;object-fit:contain;margin:0 auto 16px}.benefits h3{font-size:20px;letter-spacing:.4px;margin-bottom:12px}.benefits p{max-width:250px;margin:auto;font-size:15px}.services{display:grid;grid-template-columns:1.12fr 1fr .86fr 1.03fr;grid-template-rows:280px 160px 255px 165px;gap:24px;padding-block:48px 0;position:relative}.services-intro{grid-column:1;grid-row:1/4;padding:50px 0 0 20px}.services-intro h2{font-size:84px}.services-intro .rule{margin:28px 0 20px}.services-intro p{text-transform:uppercase;color:#e6bf8b;font-size:19px;line-height:1.35}.service{border:1px solid var(--gold);border-radius:25px;position:relative;overflow:hidden;background:linear-gradient(125deg,var(--ivory),var(--sand));color:var(--navy);isolation:isolate}.service-copy{position:relative;z-index:2;padding:20px 26px}.service h3{font-size:19px;margin-bottom:10px}.service p{font-size:15px;line-height:1.3}.number{font-family:Bebas,'Arial Narrow',sans-serif;font-size:83px;line-height:1;display:block;color:transparent;-webkit-text-stroke:1px var(--gold);font-weight:400;margin-bottom:5px}.s1{grid-column:2;grid-row:1/3}.s1 .service-copy{padding-bottom:65px;border-radius:0 0 68% 0;background:linear-gradient(125deg,var(--ivory),var(--sand))}.s1>img{position:absolute;bottom:0;left:0;width:100%;height:52%;object-fit:cover;z-index:-1;filter:none}.s2{grid-column:3/5;grid-row:1}.s2>img{position:absolute;right:0;top:0;width:68%;height:80%;object-fit:cover;clip-path:ellipse(75% 80% at 85% 15%);filter:none}.s2 .service-copy{width:63%;padding-top:20px}.s2 p{max-width:240px}.s3{grid-column:2;grid-row:3}.s4{grid-column:3;grid-row:2/4;background:transparent;color:var(--ivory)}.s4 .service-copy{padding:20px 22px}.s4 .service-line{position:absolute;bottom:-4px;left:0;width:100%;height:190px;z-index:-1}.s5{grid-column:4;grid-row:2/4}.s5 .service-copy{padding-bottom:20px}.s5>img{position:absolute;right:0;bottom:0;width:100%;height:37%;object-fit:cover;clip-path:ellipse(75% 100% at 95% 100%);filter:none;z-index:-1}.s6{grid-column:3/5;grid-row:4;display:flex;gap:20px;align-items:flex-start;padding:20px}.s6 .service-copy{padding:8px 0;max-width:235px}.s6 .number{flex-shrink:0;margin-top:2px}.resource-laurel{position:absolute;right:-5px;bottom:-45px;height:170px;width:105px;transform:rotate(40deg);opacity:.28}.final-cta{grid-column:1/3;grid-row:4;padding:0 10px 12px 20px;align-self:start}.final-cta h2{font-size:49px}.final-cta .rule{width:40px;margin:9px 0}.final-cta p{font-size:14px;margin-bottom:12px}.final-cta .button{font-size:12px;padding:8px 17px;min-height:40px}footer{margin-top:18px;background:linear-gradient(100deg,#d0b385,#e0ceb0);color:var(--navy)}.contact{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:40px;align-items:start;padding:16px 26px;font-size:16px}.contact>*+*{position:relative}.contact>*+*:before{content:'';position:absolute;left:-24px;top:9px;background:var(--navy);width:18px;height:1px}.city{text-transform:uppercase;letter-spacing:.5px}address{font-style:normal;line-height:1.45;margin-top:6px}.email{overflow-wrap:anywhere}.phone{white-space:nowrap}.contact a:hover{text-decoration:underline}
@media(min-width:1500px){.hero-photo{right:-8%}.top-curve{left:calc(50% - 340px)}}
@media(max-width:1100px){.wrap{width:calc(100% - 48px)}.header{height:112px}.brand{width:210px}.header nav{gap:14px;font-size:13px}.header nav a+a::before{margin-right:14px}.hero-copy{padding-left:25px}.hero h1{font-size:84px}.hero-copy p{font-size:16px;max-width:330px}.hero{min-height:500px}.hero-photo{height:520px}.about-card{padding:50px 50px}.about-card h2{font-size:60px}.about-card p{font-size:16px}.about{min-height:440px}.about-card{min-height:370px}.why h2{font-size:64px}.benefits{gap:36px;padding-inline:42px}.benefits article+article:before{left:-18px}.services{gap:20px;grid-template-rows:270px 170px 280px 170px}.services-intro{padding-left:10px}.services-intro h2{font-size:70px}.service-copy{padding:16px 20px}.service h3{font-size:17px}.service p{font-size:14px}.s4 .service-copy{padding:16px}.s2 .service-copy{width:68%}.s6{gap:12px;padding:16px}.s6 .service-copy{max-width:190px}.final-cta{padding-left:10px}.final-cta h2{font-size:44px}.contact{font-size:14px;gap:30px;padding-inline:10px}.contact>*+*:before{left:-22px;width:14px}}
@media(max-width:900px){.top-curve{width:350px;height:350px;top:-240px}.hero h1{font-size:75px}.hero-copy{padding-left:10px;width:48%}.hero{min-height:470px;padding-top:25px}.hero-copy p{max-width:300px}.hero-photo{height:475px;width:64%;right:-15%;top:-15px}.hero-gold{width:510px;right:-250px}.about-card{width:59%;padding:42px 40px;min-height:350px}.about-card h2{font-size:58px}.about-photo{width:51%}.about-laurel{left:27%;width:180px}.why-intro{margin-bottom:65px}.benefits{padding:28px 24px;gap:24px;border-radius:100px 100px 0 0}.benefits article{padding-inline:8px}.benefits article+article:before{left:-12px}.benefits h3{font-size:18px}.benefits p{font-size:14px}.services{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;gap:24px;padding-top:40px;padding-bottom:20px}.services-intro{grid-column:1/-1;grid-row:auto;padding:0;display:flex;align-items:center;justify-content:space-between;gap:30px}.services-intro h2{font-size:68px}.services-intro .rule{display:none}.services-intro p{font-size:17px}.service{grid-column:auto;grid-row:auto;min-height:330px}.service-copy,.s4 .service-copy{padding:24px 30px}.service h3{font-size:20px}.service p{font-size:16px}.s1{min-height:400px}.s1 .service-copy{padding-bottom:80px}.s2{min-height:400px}.s2 .service-copy{width:70%;padding-top:25px}.s3{min-height:330px}.s4{min-height:330px}.s5{min-height:360px}.s6{min-height:360px;display:block;padding:24px 30px}.s6 .service-copy{padding:0;max-width:240px}.resource-laurel{height:220px;width:140px;bottom:-10px;right:5px}.final-cta{grid-column:1/-1;grid-row:auto;padding:20px 0 5px}.final-cta h2{font-size:58px}.final-cta p{font-size:16px}.final-cta .button{font-size:14px;padding:12px 24px;min-height:44px}.contact{grid-template-columns:1fr auto;gap:18px 30px}.contact .city{grid-column:1/-1}.contact>*+*:before{display:none}}
@media(max-width:760px){.header{height:102px}.brand{width:210px}.menu-toggle{display:flex;width:46px;height:46px;flex-direction:column;justify-content:center;gap:6px;align-items:center;border:1px solid var(--gold);background:var(--navy);border-radius:9px;cursor:pointer}.menu-toggle span{display:block;width:22px;height:2px;background:var(--ivory)}.header nav{display:none;position:absolute;right:0;top:85px;background:var(--navy);border:1px solid var(--gold);border-radius:16px;padding:12px;width:min(300px,100%);font-size:16px;box-shadow:0 15px 35px #0004}.header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.header nav a{padding:14px}.header nav a+a::before{display:none}.hero{min-height:440px}.hero h1{font-size:66px}.hero-copy p{font-size:15px}.hero .button{font-size:12px;padding-inline:14px}.hero-photo{top:0;height:430px}.about-layout{padding:35px 0}.about-card{width:61%;padding:40px 30px}.about-card h2{font-size:52px}.about-card p{font-size:15px}.about-laurel{left:20%;opacity:.4}.why{padding-top:35px}.why h2{font-size:58px}.why-intro{font-size:17px}.benefits{gap:15px;padding:24px 16px}.benefits article+article:before{left:-8px;height:160px}.benefits h3{font-size:16px}.benefits p{font-size:14px}.benefits img{width:78px;height:78px}.contact{font-size:15px;grid-template-columns:1fr}.phone{grid-column:1}.contact{padding-block:24px}.city{font-size:17px}}
@media(max-width:600px){.wrap{width:calc(100% - 36px)}.top-curve{width:270px;height:270px;left:30%;top:-230px}.header{height:104px}.brand{width:205px}.hero{display:flex;flex-direction:column;padding-top:20px;min-height:0;padding-bottom:0;gap:30px}.hero-copy{width:100%;padding-left:8px}.hero h1{font-size:clamp(58px,12.5vw,76px)}.hero-copy p{font-size:16px;max-width:360px;margin-top:18px;margin-bottom:24px}.hero .button{font-size:13px;padding:12px 20px}.hero-photo{position:relative;top:auto;right:auto;width:calc(100% + 36px);margin-left:-18px;height:300px;transform:none;border-radius:48% 18% 0 0 / 42% 24% 0 0}.hero-photo img{transform:none;object-position:center}.hero-gold{width:250px;height:90px;right:-90px;bottom:-25px;transform:rotate(-18deg)}.about{padding-top:20px}.about-photo{position:relative;width:100%;height:240px;clip-path:ellipse(80% 100% at 15% 0);margin-top:-20px}.about-photo img{object-position:35% center}.about-laurel{left:auto;right:-25px;top:200px;width:155px;height:230px;opacity:.22;transform:rotate(35deg)}.about-layout{padding:0 0 35px;margin-top:-10px}.about-card{width:100%;min-height:0;padding:38px 34px 42px;border-radius:27% 12% 19% 17% / 23% 16% 20% 20%;position:relative}.about-card h2{font-size:56px;margin-bottom:15px}.about-card p{font-size:16px}.why{border-radius:35px 35px 0 0;padding-top:36px;background-size:auto 100%}.why h2{font-size:clamp(45px,10vw,60px)}.why .rule{margin-block:18px}.why-intro{font-size:16px;margin-bottom:38px}.benefits{grid-template-columns:1fr;gap:0;border-radius:70px 70px 0 0;padding:32px 34px 20px}.benefits article{padding:0 0 24px}.benefits article+article{border-top:1px solid #ac8855;padding-top:26px}.benefits article+article:before{display:none}.benefits img{width:86px;height:86px;margin-bottom:16px}.benefits h3{font-size:20px}.benefits p{font-size:16px;max-width:330px}.services{grid-template-columns:1fr;gap:22px;padding-top:38px;padding-bottom:22px}.services-intro{display:block;margin-bottom:8px}.services-intro h2{font-size:72px}.services-intro .rule{display:block;margin:20px 0}.services-intro p{font-size:17px}.service{min-height:0;border-radius:24px}.service-copy,.s4 .service-copy{padding:24px 28px}.number{font-size:85px}.service h3{font-size:21px}.service p{font-size:16px;max-width:340px}.s1{min-height:430px}.s1 .service-copy{width:90%;padding-bottom:60px;min-height:270px}.s1>img{height:50%;object-position:center}.s2{min-height:340px}.s2>img{width:63%;height:80%}.s2 .service-copy{width:74%;padding-top:25px}.s2 p{max-width:215px}.s3{min-height:280px}.s4{min-height:330px}.s4 .service-copy{max-width:340px}.s4 .service-line{height:150px;left:35%;width:65%}.s5{min-height:415px}.s5 .service-copy{max-width:330px}.s5>img{height:38%;width:85%;clip-path:ellipse(75% 100% at 95% 100%)}.s6{min-height:275px;padding:24px 28px}.s6 .service-copy{max-width:260px}.s6 .number{margin-bottom:10px}.resource-laurel{right:-15px;bottom:-45px;height:180px;opacity:.2}.final-cta{padding:12px 5px 0}.final-cta h2{font-size:clamp(41px,9.5vw,56px)}.final-cta p{font-size:16px}.final-cta .button{font-size:13px}.contact{padding-inline:8px;gap:18px}.email{display:inline-block;max-width:100%;font-size:15px}footer{margin-top:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Keep the final call to action clear of the contact band. */
@media(min-width:901px){.services{grid-template-rows:280px 160px 255px minmax(225px,auto)}.s6{align-self:start;min-height:165px}}
@media(min-width:901px) and (max-width:1100px){.services{grid-template-rows:270px 170px 280px minmax(210px,auto)}.s6{min-height:170px}}

@media(min-width:601px) and (max-width:760px){.hero h1{font-size:clamp(52px,8.8vw,66px)}}
@media(min-width:601px) and (max-width:1100px){.top-curve{height:330px;width:330px;top:-285px;left:24%;transform:none}.header nav{font-size:14px}}
@media(min-width:761px) and (max-width:900px){.hero h1{font-size:clamp(60px,8vw,72px)}}

/* Contact details are grouped by purpose, without floating separators. */
footer{margin-top:18px}
.contact{display:grid;grid-template-columns:1.1fr 1.4fr .85fr;gap:32px;align-items:start;padding:28px 20px;font-size:16px}
.contact>*+*:before{display:none}
.contact-block{min-width:0;display:flex;flex-direction:column;gap:8px}
.contact-label{font-size:12px;line-height:1.4;letter-spacing:1.4px;text-transform:uppercase;font-weight:600;color:#57452C}
.contact .city{font-size:16px;line-height:1.4;font-weight:600;text-transform:none;letter-spacing:0;grid-column:auto}
.contact address{font-size:14px;line-height:1.5;margin:0}
.contact .email{font-size:16px;line-height:1.5;overflow-wrap:anywhere;max-width:100%}
.contact .phone{font-size:16px;line-height:1.5;white-space:normal;grid-column:auto}
@media(min-width:761px) and (max-width:1100px){.header nav{gap:12px;padding:12px}.header nav a+a::before{margin-right:12px}}
@media(max-width:1000px){.contact{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:22px 36px}.contact-location{grid-row:1/3}}
@media(max-width:760px){.contact{grid-template-columns:1fr;gap:24px;padding:28px 8px}.contact-location{grid-row:auto}.header nav{padding:12px;border-radius:16px}.contact .email{font-size:15px}}
