:root{--ink:#071a32;--blue:#0a396d;--sky:#a9dbef;--foam:#e6f4ed;--sun:#ffc845;--coral:#ff675a;--paper:#f9f7f1;--muted:#647183;--line:rgba(7,26,50,.15);--mono:"DM Mono",monospace;--sans:"DM Sans",sans-serif;--serif:"Playfair Display",serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);overflow-x:hidden}.grain{position:fixed;inset:0;opacity:.05;z-index:20;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}.cursor-glow{position:fixed;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(169,219,239,.25),transparent 68%);transform:translate(-50%,-50%);pointer-events:none;z-index:-1;transition:left .15s,top .15s}.site-header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,5vw,78px);border-bottom:1px solid var(--line);position:relative;z-index:10;background:rgba(249,247,241,.83);backdrop-filter:blur(12px)}.brand{font-size:17px;font-weight:700;letter-spacing:.11em;text-decoration:none;color:var(--ink);display:inline-flex;align-items:center;gap:6px}.brand i{width:13px;height:13px;background:var(--coral);display:inline-block;border-radius:50% 50% 0 50%;transform:rotate(-30deg)}.brand span{color:var(--coral);font-size:23px;line-height:0}.main-nav{display:flex;gap:32px}.main-nav a,.footer-links a{text-decoration:none;color:var(--ink);font-size:14px;font-weight:500}.main-nav a:hover,.footer-links a:hover{color:var(--coral)}.nav-cta,.button{background:var(--ink);color:white;padding:13px 18px;text-decoration:none;font-weight:600;font-size:13px;display:inline-block;border:0;cursor:pointer}.nav-cta b{color:var(--sun);padding-left:8px}.menu-button{display:none;border:0;background:none;font-size:23px}.page{min-height:70vh}.hero{position:relative;min-height:calc(100vh - 82px);padding:clamp(58px,10vw,150px) clamp(20px,8vw,130px) 65px;overflow:hidden}.eyebrow{font:11px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--blue);display:flex;align-items:center;gap:10px}.eyebrow:before{content:"";height:1px;width:28px;background:currentColor}.hero h1{font:700 clamp(47px,8.4vw,122px)/.91 var(--serif);letter-spacing:-.075em;max-width:930px;margin:25px 0 28px}.hero h1 em{font-weight:700;color:var(--coral)}.hero-copy{max-width:510px;font-size:19px;line-height:1.55;color:#334760;margin-bottom:32px}.button.alt{background:transparent;color:var(--ink);border:1px solid var(--ink);margin-left:9px}.button:hover,.nav-cta:hover{transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--sun)}.hero-art{position:absolute;right:4%;bottom:5%;width:min(43vw,580px);height:290px;pointer-events:none}.orbit{position:absolute;border:1px solid rgba(10,57,109,.35);border-radius:50%;width:430px;height:430px;right:-90px;bottom:-175px}.orbit:after{content:"";width:23px;height:23px;background:var(--sun);border-radius:50%;position:absolute;top:40px;left:36px}.route{position:absolute;right:25px;top:30px;width:300px;height:205px;border:2px solid var(--blue);border-radius:50% 50% 42% 46%;transform:rotate(-19deg);border-left-color:transparent}.route:before,.route:after{content:"";position:absolute;border-radius:50%}.route:before{width:32px;height:32px;background:var(--coral);top:15px;left:25px}.route:after{width:22px;height:22px;background:var(--ink);bottom:-11px;right:16px}.ship-card{position:absolute;background:#fff;border:1px solid var(--ink);right:80px;top:73px;width:250px;padding:16px;box-shadow:8px 8px 0 var(--sky);transform:rotate(5deg);font:10px var(--mono)}.ship-card strong{display:block;font:700 24px var(--sans);margin:8px 0}.ship-card .dots{color:var(--coral);letter-spacing:5px}.trust-ticker{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;white-space:nowrap;overflow:hidden;font:12px var(--mono);letter-spacing:.08em;text-transform:uppercase}.trust-ticker div{display:inline-block;animation:ticker 27s linear infinite}.trust-ticker b{color:var(--coral);margin:0 30px;font-size:16px}@keyframes ticker{to{transform:translateX(-50%)}}.split-section{padding:clamp(75px,11vw,160px) clamp(20px,8vw,130px);display:grid;grid-template-columns:.9fr 1.1fr;gap:10vw;align-items:start}.display{font:700 clamp(38px,5.5vw,75px)/.98 var(--serif);letter-spacing:-.06em;margin:17px 0}.body-copy{font-size:18px;line-height:1.65;color:#41526a}.problem-list{border-top:1px solid var(--ink);margin-top:40px}.problem{padding:20px 0;border-bottom:1px solid var(--line);font-size:20px;display:flex;gap:16px}.problem b{font:12px var(--mono);color:var(--coral);padding-top:6px}.dark{background:var(--ink);color:white}.dark .eyebrow{color:var(--sun)}.dark .body-copy{color:#b8c9d6}.workflows{padding:110px clamp(20px,8vw,130px)}.workflow-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:1px;background:#263a51;margin-top:55px}.workflow{min-height:410px;background:var(--ink);padding:30px;position:relative;overflow:hidden}.workflow:first-child{background:var(--coral);color:var(--ink)}.workflow:nth-child(2){background:#164d76}.workflow h3{font:600 34px/1 var(--serif);letter-spacing:-.04em;max-width:7ch;position:relative;z-index:1}.workflow p{position:absolute;bottom:24px;max-width:27ch;line-height:1.5;color:#dbe8ef}.workflow:first-child p{color:var(--ink)}.number{font:12px var(--mono);position:absolute;right:25px;top:26px}.workflow-art{position:absolute;right:-40px;bottom:72px;width:180px;height:180px;border:1px solid currentColor;border-radius:47% 54% 43% 55%;opacity:.65}.workflow:nth-child(2) .workflow-art{border-radius:0;transform:rotate(35deg)}.workflow:nth-child(3) .workflow-art{background:var(--sun);border:0;width:115px;height:115px;right:40px}.quote-section{padding:0 clamp(20px,8vw,130px) 130px}.quote{background:var(--foam);padding:clamp(36px,7vw,90px);display:grid;grid-template-columns:100px 1fr;gap:30px;position:relative;overflow:hidden}.quote:after{content:"“";font:400 330px/.6 var(--serif);color:rgba(10,57,109,.08);position:absolute;right:25px;bottom:-80px}.avatar{width:83px;height:83px;border-radius:50%;background:linear-gradient(140deg,#fcbd78,#71452f);position:relative}.avatar:after{content:"";width:48px;height:30px;background:#203c57;border-radius:50% 50% 0 0;position:absolute;bottom:0;left:17px}.quote blockquote{font:700 clamp(29px,4vw,55px)/1.1 var(--serif);letter-spacing:-.05em;margin:0;max-width:900px;position:relative;z-index:1}.quote cite{display:block;font:13px var(--mono);font-style:normal;margin-top:27px}.editorial{padding:100px clamp(20px,8vw,130px);background:#f1d9b5}.insight-top{display:flex;justify-content:space-between;align-items:end;gap:30px}.arrow-link{color:var(--ink);font:600 14px var(--sans);text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:5px}.journal-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:22px;margin-top:35px}.story{border-top:1px solid var(--ink);padding-top:15px}.story .image-placeholder{height:260px;margin-bottom:18px}.story:first-child .image-placeholder{height:350px}.image-placeholder{background:#c4d5d4;position:relative;overflow:hidden;display:flex;align-items:end;padding:12px;color:#173f59;font:10px var(--mono);text-transform:uppercase;letter-spacing:.06em}.image-placeholder:before{content:"";width:180px;height:180px;position:absolute;border:1px solid currentColor;opacity:.32;border-radius:50%;right:-20px;top:20px}.image-placeholder:after{content:"alt_image";position:absolute;top:12px;left:12px;color:var(--coral);font-weight:bold}.story:nth-child(2) .image-placeholder{background:#ff9f8f}.story:nth-child(3) .image-placeholder{background:#91b6d4}.story small,.card small{font:10px var(--mono);letter-spacing:.08em;text-transform:uppercase}.story h3{font:600 28px/1.05 var(--serif);letter-spacing:-.04em;margin:10px 0}.cta-band{padding:90px clamp(20px,8vw,130px);background:var(--sun);display:flex;align-items:end;justify-content:space-between;gap:40px}.cta-band h2{font:700 clamp(40px,6vw,78px)/.93 var(--serif);letter-spacing:-.065em;max-width:790px;margin:0}.cta-band .button{flex:none}.page-hero{padding:85px clamp(20px,8vw,130px) 60px;border-bottom:1px solid var(--line)}.page-hero h1{font:700 clamp(52px,8vw,105px)/.9 var(--serif);letter-spacing:-.07em;margin:18px 0;max-width:10ch}.page-hero p{max-width:600px;font-size:18px;line-height:1.6;color:#41526a}.case-grid,.journal-list,.team-grid,.roles{padding:70px clamp(20px,8vw,130px);display:grid;grid-template-columns:repeat(12,1fr);gap:24px}.case-card{grid-column:span 6;min-height:470px;padding:30px;display:flex;flex-direction:column;justify-content:end;color:var(--ink);position:relative;overflow:hidden}.case-card:nth-child(1){background:var(--sky)}.case-card:nth-child(2){background:var(--coral)}.case-card:nth-child(3){background:var(--foam);grid-column:span 4}.case-card:nth-child(4){background:#d9caf5;grid-column:span 8}.case-card:before{content:"";position:absolute;width:300px;height:300px;border:2px solid rgba(7,26,50,.42);border-radius:49% 51% 63% 37%;right:-60px;top:-70px}.case-card h2{font:700 48px/1 var(--serif);letter-spacing:-.05em;max-width:10ch;margin:10px 0;position:relative}.case-card p{max-width:34ch;line-height:1.5;position:relative}.pill{border:1px solid currentColor;border-radius:50px;padding:7px 10px;width:max-content;font:10px var(--mono);text-transform:uppercase;position:relative}.metric{font:700 64px/.8 var(--serif);letter-spacing:-.07em;position:absolute;right:30px;bottom:30px}.journal-list{display:block;padding-top:22px}.journal-row{display:grid;grid-template-columns:120px 1fr 180px;align-items:center;gap:30px;border-bottom:1px solid var(--line);padding:28px 0;text-decoration:none;color:var(--ink)}.journal-row:hover h2{color:var(--coral);padding-left:13px}.journal-row h2{font:600 35px/1 var(--serif);letter-spacing:-.045em;margin:0;transition:.2s}.journal-row p{color:var(--muted);margin:6px 0 0}.journal-row .mini-img{height:92px;background:var(--sky);position:relative}.journal-row:nth-child(even) .mini-img{background:var(--sun)}.company-statement{padding:120px clamp(20px,15vw,270px);background:var(--ink);color:white}.company-statement h2{font:700 clamp(44px,6.5vw,88px)/.95 var(--serif);letter-spacing:-.07em;margin:0}.company-statement em{color:var(--sun)}.values{padding:100px clamp(20px,8vw,130px);display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.value{border-top:2px solid var(--ink);padding-top:18px}.value h3{font:600 32px var(--serif);letter-spacing:-.04em;margin:0}.value p{line-height:1.6;color:var(--muted)}.team-grid{grid-template-columns:repeat(4,1fr)}.person{grid-column:span 1}.portrait{height:320px;background:#b8d1dd;position:relative;overflow:hidden}.portrait:before{content:"alt_image: team portrait";position:absolute;top:10px;left:10px;font:10px var(--mono);color:var(--blue)}.portrait:after{content:"";position:absolute;width:180px;height:230px;left:50%;bottom:-40px;transform:translateX(-50%);background:#233e58;border-radius:48% 48% 0 0}.person:nth-child(2) .portrait{background:#efb38b}.person:nth-child(3) .portrait{background:#c4e3cd}.person:nth-child(4) .portrait{background:#e1c2dc}.person h3{margin:13px 0 2px;font-size:19px}.person p{margin:0;color:var(--muted);font-size:14px}.roles{display:block}.role{display:grid;grid-template-columns:1fr 1.6fr auto;gap:30px;padding:28px 0;border-top:1px solid var(--ink);align-items:center}.role:last-child{border-bottom:1px solid var(--ink)}.role h2{font:600 32px var(--serif);letter-spacing:-.04em;margin:0}.role p{margin:0;color:var(--muted);line-height:1.5}.contact-wrap{padding:65px clamp(20px,8vw,130px) 120px;display:grid;grid-template-columns:.8fr 1.2fr;gap:10vw}.contact-aside h2{font:600 45px/1 var(--serif);letter-spacing:-.05em}.contact-form{background:var(--ink);color:white;padding:42px}.field{display:block;margin-bottom:22px}.field span{display:block;font:10px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--sky);margin-bottom:9px}.field input,.field textarea,.field select{width:100%;padding:12px 0;background:transparent;border:0;border-bottom:1px solid #8094a8;color:white;font:16px var(--sans);outline:none}.field textarea{min-height:100px;resize:vertical}.contact-form .button{background:var(--sun);color:var(--ink);width:100%;margin-top:14px}.site-footer{padding:62px clamp(20px,8vw,130px) 24px;background:#06213e;color:white;display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.site-footer .brand{color:white}.site-footer p{color:#9cb1c4;max-width:230px;line-height:1.5}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.footer-links small{font:10px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--sun);display:block;margin-bottom:15px}.footer-links a{color:white;display:block;margin:10px 0}.footer-bottom{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.18);padding-top:20px;display:flex;justify-content:space-between;color:#9cb1c4;font:10px var(--mono)}.toast{position:fixed;right:20px;bottom:20px;background:var(--ink);color:white;padding:16px 20px;transform:translateY(120px);transition:.3s;z-index:30}.toast.show{transform:translateY(0)}.reveal{opacity:0;transform:translateY(23px);transition:.6s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:760px){.site-header{height:68px}.main-nav,.nav-cta{display:none}.menu-button{display:block}.hero{min-height:680px}.hero-art{width:500px;right:-150px;bottom:30px;opacity:.75}.split-section,.contact-wrap{grid-template-columns:1fr;gap:30px}.workflow-grid,.journal-grid{grid-template-columns:1fr}.workflow{min-height:300px}.quote{grid-template-columns:1fr}.quote .avatar{display:none}.insight-top,.cta-band{align-items:start;flex-direction:column}.case-grid{display:block}.case-card{margin-bottom:20px;min-height:390px}.team-grid{grid-template-columns:1fr 1fr}.person{grid-column:auto}.portrait{height:230px}.values{grid-template-columns:1fr}.journal-row{grid-template-columns:1fr}.journal-row .mini-img{display:none}.role{grid-template-columns:1fr}.site-footer{grid-template-columns:1fr;gap:40px}.footer-bottom{gap:15px;flex-direction:column}.button.alt{margin-left:0;margin-top:10px}}
