@font-face{font-family:Display;src:url(assets/display.ttf);font-weight:100 900;font-display:swap}@font-face{font-family:Body;src:url(assets/body.ttf);font-weight:100 900;font-display:swap}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 Body,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;width:100%;height:auto}figure{margin:0}svg{width:24px;height:24px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Display,Arial,sans-serif;font-weight:500;line-height:1.03;letter-spacing:-.055em}h1{font-size:clamp(65px,7.4vw,116px)}h2{font-size:clamp(40px,5.2vw,78px)}h3{font-size:30px;letter-spacing:-.025em}p{max-width:62ch}p+p{margin-top:20px}.wrap{width:min(1440px,90%);margin-inline:auto}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;margin-bottom:28px;color:var(--accent)}.lead{font-size:18px;max-width:36ch;margin:30px 0}.small{font-size:12px;color:var(--muted)}.skip{position:fixed;top:-60px;left:20px;background:var(--ink);color:var(--paper);padding:12px;z-index:200}.skip:focus{top:10px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.nav{height:106px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand img{width:210px;height:65px;object-fit:contain;object-position:left}.menu-button{border:1px solid var(--line);border-radius:40px;background:transparent;color:var(--ink);padding:12px 22px;display:flex;align-items:center;gap:22px}.menu-button b{width:24px;height:10px;border-top:1px solid;border-bottom:1px solid;transition:transform .3s}.menu-button:hover b{transform:scaleX(.65)}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:7%;padding-block:68px 88px;align-items:center;min-height:690px}.hero-image{height:540px;position:relative;border-radius:18px;isolation:isolate}.hero-image>img{height:100%;object-fit:cover;border-radius:inherit}.orbit{position:absolute;inset:-15px;border:1px solid var(--accent);border-radius:inherit;transform:rotate(3deg);pointer-events:none;animation:orbit 8s ease-in-out infinite}.hero-image:after{content:'';position:absolute;width:12px;height:12px;border-radius:50%;background:var(--accent);right:-20px;top:25%;animation:dot 5s ease-in-out infinite}.cta{display:inline-flex;align-items:center;gap:24px;background:var(--accent);color:var(--onaccent);border:0;border-radius:48px;padding:7px 7px 7px 25px;font-weight:650;font-size:14px;box-shadow:0 5px 0 transparent;transition:transform .3s,box-shadow .3s}.cta i{width:45px;height:45px;border-radius:50%;display:grid;place-items:center;background:var(--onaccent);color:var(--accent);transition:transform .35s}.cta:hover{transform:translateY(-4px);box-shadow:0 5px 0 var(--line)}.cta:hover i{transform:rotate(-40deg)}.text-link{display:inline-flex;gap:30px;align-items:center;border-bottom:1px solid var(--accent);padding:14px 0;font-weight:600}.text-link svg{transition:transform .3s}.text-link:hover svg{transform:translateX(8px)}.split{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;padding-block:110px}.split p{margin:30px 0;max-width:45ch}.split>img{height:460px;object-fit:cover;border-radius:14px}.split.reverse>div{order:2}.band{padding:70px 5%;background:var(--panel)}.band-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:end}.band p{margin-top:25px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;padding-block:60px 100px}.card{border-top:1px solid var(--line);padding-top:24px;transition:transform .35s}.card:hover{transform:translateY(-8px)}.card img{height:280px;object-fit:cover;border-radius:12px;margin-bottom:25px}.card p{font-size:14px;margin:20px 0}.card .number{font-size:12px;color:var(--accent);margin-bottom:25px;display:block}.expand{height:175vh;position:relative}.expand-sticky{position:sticky;top:0;height:100vh;display:grid;place-items:center;overflow:hidden}.expand figure{width:calc(78% + 22% * var(--expansion,0));height:calc(70% + 30% * var(--expansion,0));border-radius:calc(32px * (1 - var(--expansion,0)));overflow:hidden;position:relative}.expand img{height:100%;object-fit:cover}.expand figcaption{position:absolute;left:6%;bottom:9%;max-width:12ch;font:500 clamp(45px,6.3vw,100px)/1 Display,Arial,sans-serif;color:#fff;text-shadow:0 2px 20px #000}.expand figure:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#0006);z-index:-1}.notice{padding:22px 5%;font-size:12px;background:var(--panel);border-block:1px solid var(--line)}.page-hero{min-height:530px}.page-hero h1{font-size:clamp(55px,5.8vw,87px)}.page-hero .hero-image{height:380px}.rows{padding-block:60px 100px}.row{display:grid;grid-template-columns:120px 1fr 1fr;gap:35px;padding:40px 0;border-top:1px solid var(--line);align-items:start}.row span{font:500 55px/1 Display;letter-spacing:-.04em;color:var(--accent)}.row p{font-size:14px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding-block:85px}.contact-grid p{margin:30px 0}.contact-grid form{display:grid;gap:20px}.contact-grid label{display:grid;gap:8px;font-size:13px;font-weight:600}input,textarea,select{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:14px;color:var(--ink);width:100%;min-width:0}.contact-grid .cta{justify-self:start}details{border-top:1px solid var(--line);padding:25px 0}summary{cursor:pointer;font-weight:600;list-style:none}summary:after{content:'+';float:right;font-size:24px}details[open] summary:after{content:'−'}details p{margin:20px 0;font-size:14px}.bottom{padding-block:95px}.bottom h2{max-width:17ch;margin-bottom:35px}.footer{padding:60px 5% 28px;background:var(--panel)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footer img{width:230px;height:70px;object-fit:contain;object-position:left;margin-bottom:20px}.footer nav{display:flex;flex-direction:column;gap:12px}.footer small{display:block;border-top:1px solid var(--line);margin-top:40px;padding-top:20px;font-size:11px}.menu{position:fixed;inset:0;background:var(--paper);z-index:90;padding:30px 5%;overflow:auto;animation:menuin .4s}.menu-head{display:flex;justify-content:space-between;align-items:center}.menu-head img{width:200px}.menu nav{display:grid;gap:14px;margin-top:55px}.menu nav a{font:500 clamp(36px,5vw,74px)/1.12 Display;letter-spacing:-.04em;transition:transform .3s,color .3s}.menu nav a:hover{transform:translateX(15px);color:var(--accent)}.menu-open{overflow:hidden}.access-button{position:fixed;bottom:20px;right:20px;z-index:70;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:var(--paper);border:1px solid var(--paper)}.access-panel{position:fixed;right:20px;bottom:78px;z-index:70;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:20px;box-shadow:0 8px 40px #0002}.access-panel button{display:block;background:var(--panel);color:var(--ink);border:1px solid var(--line);padding:10px;margin-top:10px;border-radius:6px;width:100%}.loader{position:fixed;top:15px;left:calc(50% - 35px);width:70px;height:55px;z-index:80;pointer-events:none}.logo-fragment{position:absolute;inset:0;object-fit:contain;width:100%;height:100%;animation:assemble .9s ease both}.logo-fragment:first-child{clip-path:inset(0 65% 0 0)}.logo-fragment:nth-child(2){clip-path:inset(0 32% 0 33%);animation-delay:.08s}.logo-fragment:last-child{clip-path:inset(0 0 0 66%);animation-delay:.16s}.loader.leave{opacity:0;transition:opacity .3s}.video-wrap{position:relative}.video-wrap>video{width:100%;border-radius:14px;display:block}.video-wrap button{position:absolute;bottom:25px;left:25px}.video-wrap>img{border-radius:14px}.reveal-ready [data-reveal]:not(.visible){opacity:0;transform:translateY(20px)}[data-reveal]{transition:opacity .7s,transform .7s}.filter{display:flex;flex-wrap:wrap;gap:12px;margin-block:30px}.filter button{background:transparent;color:var(--ink);padding:10px 18px;border-radius:30px;border:1px solid var(--line)}.filter button[aria-pressed="true"]{background:var(--ink);color:var(--paper)}[hidden]{display:none!important}[data-theme="dark"]{--paper:#142b34;--panel:#203a44;--ink:#f3f5ef;--muted:#c0ccd1;--line:#47606b}[data-theme="dark"] .brand img,[data-theme="dark"] .footer img{background:#fff;border-radius:5px;padding:5px}
@keyframes orbit{50%{transform:rotate(-2deg)}}@keyframes dot{50%{transform:translateY(60px)}}@keyframes assemble{from{opacity:0;transform:translateY(-20px) rotate(-10deg)}to{opacity:1;transform:none}}@keyframes menuin{from{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:none}}@view-transition{navigation:auto}::view-transition-old(root){animation:oldpage .22s both}::view-transition-new(root){animation:newpage .32s both}@keyframes oldpage{to{opacity:0;transform:translateY(-8px)}}@keyframes newpage{from{opacity:0;transform:translateY(8px)}}
@media(max-width:1000px){.hero{gap:5%;min-height:590px}.hero-image{height:430px}.cards{grid-template-columns:repeat(2,1fr)}.row{grid-template-columns:80px 1fr 1fr}.brand img{width:180px}.split{gap:5%}}
@media(max-width:700px){.wrap{width:90%}.nav{height:85px}.brand img{width:155px;height:55px}.menu-button{padding:9px 16px;gap:12px;font-size:12px}.hero,.split,.band-grid,.contact-grid{grid-template-columns:1fr;gap:35px}.hero{padding-block:45px 60px;min-height:0}.hero h1{font-size:clamp(56px,15vw,78px)}.hero-image{height:350px}.lead{font-size:16px;margin:23px 0}.eyebrow{margin-bottom:20px}.split{padding-block:65px}.split>img{height:320px}.split.reverse>div{order:0}.cards{grid-template-columns:1fr;padding-block:35px 65px;gap:35px}.card img{height:300px}.row{grid-template-columns:50px 1fr;gap:20px}.row p{grid-column:2}.row span{font-size:35px}.contact-grid{padding-block:60px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.expand{height:auto}.expand-sticky{position:relative;height:500px}.expand figure{width:100%;height:100%;border-radius:0}.bottom{padding-block:65px}.page-hero .hero-image{height:300px}.band{padding:55px 5%}.orbit{animation:none}.hero-image:after{animation:none}.menu nav{gap:22px}.contact-grid .text-link{font-size:14px;overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){html:not([data-motion="full"]){scroll-behavior:auto}html:not([data-motion="full"]) *,html:not([data-motion="full"]) *:before,html:not([data-motion="full"]) *:after{animation:none!important;transition:none!important}html:not([data-motion="full"]) .expand{height:auto}html:not([data-motion="full"]) .expand-sticky{position:relative;height:80vh}html:not([data-motion="full"]) .expand figure{width:100%;height:100%}html:not([data-motion="full"]).reveal-ready [data-reveal]:not(.visible){opacity:1;transform:none}}
[data-motion="reduce"]{scroll-behavior:auto}[data-motion="reduce"] *,[data-motion="reduce"] *:before,[data-motion="reduce"] *:after{animation:none!important;transition:none!important}[data-motion="reduce"] .expand{height:auto}[data-motion="reduce"] .expand-sticky{position:relative;height:80vh}[data-motion="reduce"] .expand figure{width:100%;height:100%}[data-motion="reduce"] [data-reveal]{opacity:1;transform:none}
 :root{--paper:#f7f5ee;--panel:#e9e8df;--ink:#282a30;--accent:#4255ae;--onaccent:#fff;--muted:#606573;--line:#d2d5df}h1,h2,h3{font-weight:650}.hero{grid-template-columns:1fr 1fr;gap:7%}.hero h1{font-size:clamp(70px,7.8vw,115px)}.hero-image{border-radius:10px;height:540px;margin-top:25px}.hero-image .orbit{border-radius:10px;transform:rotate(-4deg);inset:-18px 18px 18px -18px}.hero-image>img{object-position:center}.brand img{width:290px;max-width:50vw;object-fit:contain}.footer img{width:300px;max-width:100%}.douglas-paths{padding-block:70px 100px}.douglas-path-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:50px;border-block:1px solid var(--line)}.douglas-path-grid a{padding:35px;border-right:1px solid var(--line);transition:background .3s}.douglas-path-grid a:last-child{border-right:0}.douglas-path-grid a:hover{background:#e9edf9}.douglas-path-grid span{color:var(--accent);font-size:12px}.douglas-path-grid h3{font-size:32px;margin-top:45px}.douglas-path-grid p{font-size:14px;margin:20px 0}.douglas-feature{display:grid;grid-template-columns:1.3fr 1fr;gap:9%;align-items:center;padding-block:50px 100px}.douglas-feature>img{height:500px;object-fit:cover;border-radius:10px}.douglas-feature p{margin:28px 0}.douglas-story{display:grid;grid-template-columns:1fr 1.1fr;gap:8%;padding-block:110px}.big-year{font:650 clamp(100px,13vw,210px)/1 Display;letter-spacing:-.08em;color:var(--accent);display:block;margin-bottom:25px}.douglas-story p{margin:25px 0}.gallery{padding-block:65px 110px}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.gallery-grid figure{min-width:0}.gallery-grid img{height:360px;object-fit:cover;border-radius:10px;transition:transform .4s}.gallery-grid figure:hover img{transform:translateY(-5px)}.gallery-grid figcaption{font-size:11px;color:var(--muted);margin-top:15px}.service-mosaic{padding-block:65px 100px;display:grid;gap:50px}.service-mosaic article{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center;border-top:1px solid var(--line);padding-top:40px}.service-mosaic article:nth-child(even)>img{order:2}.service-mosaic article img{height:340px;object-fit:cover;border-radius:10px}.service-mosaic article img[src*="palmetto"]{object-fit:contain;background:#ecece6}.service-mosaic h2{font-size:clamp(35px,4vw,60px)}.service-mosaic p{margin:25px 0}.footer{background:#e7eaf4}.page-hero h1{font-size:clamp(50px,5.6vw,84px)}[data-theme="dark"] .footer,[data-theme="dark"] .douglas-path-grid a:hover{background:var(--panel)}@media(max-width:700px){.hero{grid-template-columns:1fr}.brand img{width:210px}.hero h1{font-size:66px}.hero-image{height:375px;margin-top:0}.douglas-path-grid,.douglas-feature,.douglas-story,.gallery-grid,.service-mosaic article{grid-template-columns:1fr}.douglas-path-grid a{border-right:0;border-bottom:1px solid var(--line);padding:30px 10px}.douglas-path-grid h3{margin-top:20px}.douglas-feature,.douglas-story{padding-block:60px;gap:30px}.douglas-feature>img{height:360px}.service-mosaic article:nth-child(even)>img{order:0}.gallery-grid img{height:300px}.service-mosaic{padding-block:50px}.page-hero h1{font-size:55px}}