@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{font-family:'DM Sans',Arial,sans-serif;color:#e9edf0;background:#0d1721;--bg:#101d29;--ink:#eff2f2;--muted:#b4c0c5;--line:#63758066;--accent:#c5a76a;--panel:#192a35;--art:#182733}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);transition:background .4s,color .4s}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.shell{max-width:1440px;margin:auto;padding-left:6.5%;padding-right:6.5%}.prototype-bar{min-height:55px;background:#eef0ee;color:#15222b;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:9px 2.5%;font-size:10px;font-weight:700;letter-spacing:.12em}.prototype-label{white-space:nowrap}.prototype-label b{font-weight:500;color:#76838b}.prototype-note{font-weight:500;color:#76838b}.direction-switch{display:flex;gap:4px}.direction{border:0;background:transparent;padding:10px 14px;color:#596670;font-size:11px;font-weight:700;letter-spacing:.03em}.direction.active{background:#172935;color:white;border-radius:2px}.site-header{height:99px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none;font-family:Manrope,sans-serif;font-weight:800;letter-spacing:.12em;font-size:13px;line-height:1.1}.location,.eyebrow,.hero-bottom,.art-caption,.credential,footer,.quiz-top,.quiz-bottom,#step-count{font-size:10px;font-weight:700;letter-spacing:.16em}.location{display:flex;gap:14px;align-items:center;color:var(--muted)}.location i{display:block;width:4px;height:4px;background:var(--accent);border-radius:50%}.header-cta,.text-link{color:var(--ink);border:0;background:none;padding:9px 0;border-bottom:1px solid var(--accent);font-weight:700;font-size:12px}.header-cta span,.text-link span{padding-left:20px;color:var(--accent)}.hero{min-height:640px;display:grid;grid-template-columns:53% 47%;position:relative;padding-top:68px;padding-bottom:68px}.hero-copy{position:relative;z-index:2;align-self:center;padding:0 6% 45px 0}.eyebrow{color:var(--accent);margin:0 0 28px}.hero h1,.intro h2,.process h2,.story h2,.closing h2{font-family:Manrope,Arial,sans-serif;letter-spacing:-.06em;font-weight:600}.hero h1{font-size:clamp(52px,6.2vw,104px);line-height:1.03;margin:0 0 27px;white-space:nowrap}.hero h1 em{font-style:normal;color:var(--accent)}.lead{font-size:18px;line-height:1.6;color:var(--muted);max-width:510px;margin:0 0 37px}.hero-actions{display:flex;align-items:center;gap:25px}.hero-actions>span{font-size:11px;color:var(--muted)}.primary-button{border:0;background:var(--accent);color:#12212b;padding:18px 21px;font-weight:700;font-size:13px;min-width:190px;text-align:left}.primary-button span{float:right;margin-left:25px}.hero-art{background:var(--art);min-height:515px;overflow:hidden;position:relative}.hero-art img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.art-lake,.art-navy{display:none}.art-forest{object-position:center}.hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#07101788,transparent 45%)}.art-caption{position:absolute;z-index:2;bottom:23px;left:27px;color:white}.art-caption b{color:var(--accent)}.hero-bottom{position:absolute;bottom:24px;left:6.5%;right:6.5%;display:flex;justify-content:space-between;color:var(--muted)}.intro{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding-top:130px;padding-bottom:145px}.intro h2,.process h2,.story h2,.closing h2{font-size:clamp(38px,4.3vw,69px);line-height:1.12;margin:0}.intro-right{padding-top:40px}.intro-right p{font-size:19px;line-height:1.65;color:var(--muted);max-width:520px}.intro-right .text-link{margin-top:18px}.process{background:var(--panel);padding:105px 0 112px}.process h2{max-width:850px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:78px}.steps article{border-top:1px solid var(--line);padding-top:24px}.steps article>span{color:var(--accent);font-size:11px;font-weight:700}.steps h3{font-family:Manrope,sans-serif;font-size:26px;margin:41px 0 14px}.steps p{color:var(--muted);line-height:1.6;font-size:15px;max-width:280px}.story{display:grid;grid-template-columns:26% 1fr;padding-top:140px;padding-bottom:150px}.story h2{max-width:810px}.story p:not(.eyebrow){font-size:18px;line-height:1.7;color:var(--muted);max-width:730px;margin-top:35px}.story .credential{font-size:10px!important;line-height:2!important;color:var(--ink)!important;margin-top:45px!important}.credential span{color:var(--accent);padding:0 9px}.closing{padding:108px 0 115px;background:var(--accent);color:#11212b}.closing .eyebrow{color:#304653}.closing h2{font-size:clamp(48px,6vw,90px)}.closing p:not(.eyebrow){max-width:530px;font-size:17px;line-height:1.6}.closing .primary-button{background:#11212b;color:#fff;margin-top:20px}footer{padding-top:30px!important;padding-bottom:30px!important;display:flex;justify-content:space-between;gap:15px;color:var(--muted)}
body[data-direction=lake]{--bg:#e8ece8;--ink:#1d3133;--muted:#536b70;--line:#8ea2a284;--accent:#bf805e;--panel:#d6e2de;--art:#718b8d}body[data-direction=lake] .art-forest,body[data-direction=lake] .art-navy{display:none}body[data-direction=lake] .art-lake{display:block}body[data-direction=lake] .hero{grid-template-columns:52% 48%}body[data-direction=lake] .hero-art{border-radius:48% 48% 0 0;min-height:550px}body[data-direction=lake] .hero h1 em{color:#4f7c7a}body[data-direction=lake] .primary-button{background:#295958;color:white}body[data-direction=lake] .closing{background:#d6e2de}body[data-direction=lake] .closing .primary-button{background:#295958}body[data-direction=lake] .art-caption{color:white}
body[data-direction=editorial]{--bg:#eeeae2;--ink:#162531;--muted:#4c5b63;--line:#2e41414f;--accent:#9c753f;--panel:#192934;--art:#13212d}body[data-direction=editorial] .art-forest,body[data-direction=editorial] .art-lake{display:none}body[data-direction=editorial] .art-navy{display:block}body[data-direction=editorial] .hero{grid-template-columns:58% 42%}body[data-direction=editorial] .hero-art{min-height:520px}body[data-direction=editorial] .hero-art img{object-fit:cover}body[data-direction=editorial] .hero h1{font-size:clamp(58px,7vw,112px);text-transform:uppercase;line-height:.94}body[data-direction=editorial] .hero h1 em{color:#365b6c}body[data-direction=editorial] .process{color:#f2f0e8}body[data-direction=editorial] .process .steps p{color:#bdc9ce}body[data-direction=editorial] .closing{background:#18303f;color:#f1eee8}body[data-direction=editorial] .closing .primary-button{background:#bb965c;color:#142530}body[data-direction=editorial] .closing .eyebrow{color:#bb965c}
.quiz-backdrop{position:fixed;inset:0;z-index:20;background:#071119cf;display:flex;align-items:center;justify-content:center;padding:20px}.quiz-backdrop[hidden]{display:none}.quiz-panel{width:min(680px,100%);height:min(690px,calc(100dvh - 40px));display:flex;flex-direction:column;background:#f4f1e9;color:#142934;box-shadow:0 24px 90px #0005}.quiz-top{height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 37px}.quiz-top button{font-size:30px;border:0;background:transparent;color:#142934}.progress{height:3px;background:#d8dedc}.progress span{display:block;height:100%;width:20%;background:#b99156;transition:width .25s}.quiz-content{flex:1;padding:50px 58px 30px;overflow:auto}.quiz-kicker{color:#987c4c;font-size:11px;font-weight:700;letter-spacing:.18em;margin:0 0 20px}.quiz-content h2{font-family:Manrope,sans-serif;font-size:clamp(28px,4vw,43px);letter-spacing:-.055em;line-height:1.16;margin:0 0 15px}.quiz-help{font-size:15px;line-height:1.55;color:#5d6d70;margin:0 0 32px}.choices{display:grid;gap:10px}.choice{background:transparent;border:1px solid #9fafaf;text-align:left;color:#19313c;min-height:53px;padding:14px 19px;font-size:15px;display:flex;align-items:center;justify-content:space-between;transition:.15s}.choice:hover,.choice:focus-visible{border-color:#234856;background:#e3eae6;transform:translateX(3px)}.choice span:last-child{color:#ad8c55}.quiz-bottom{border-top:1px solid #d4d9d7;min-height:66px;padding:0 38px;display:flex;align-items:center;justify-content:space-between;color:#7a8b8c}.quiz-bottom button{border:0;background:transparent;color:#284956;font-size:13px;font-weight:700}.quiz-bottom button:disabled{opacity:.35;cursor:default}.mini-input,.contact-input{display:block;width:100%;border:1px solid #a8b4b1;background:#fff;padding:14px 15px;font:inherit;color:#17313a;margin:10px 0}.mini-input{margin-top:14px}.quiz-continue{margin-top:13px;border:0;background:#163d4a;color:#fff;padding:15px 19px;font-weight:700}.field-label{font-size:12px;font-weight:700;color:#45606a;display:block;margin-top:18px}.fine-print{font-size:12px;line-height:1.55;color:#68797d;margin-top:20px}.quiz-result{padding:20px 0}.quiz-result p{font-size:17px;line-height:1.6;color:#49616a}.quiz-result .notice{padding:16px;border-left:3px solid #b99156;background:#e7e7de}.quiz-result .primary-button{margin-top:15px}
@media(max-width:900px){.prototype-note,.location{display:none}.hero{grid-template-columns:1fr!important;padding-top:55px}.hero-copy{padding:0 0 35px}.hero h1{white-space:normal!important}.hero-art{min-height:420px!important}.hero-bottom{display:none}.intro{padding-top:90px;padding-bottom:100px}.story{grid-template-columns:1fr;gap:35px;padding-top:95px;padding-bottom:100px}}@media(max-width:600px){.prototype-bar{align-items:flex-start;flex-direction:column;padding:12px 4%}.direction-switch{width:100%;justify-content:space-between}.direction{padding:10px 6px}.shell{padding-left:6%;padding-right:6%}.site-header{height:78px}.header-cta{font-size:0}.header-cta span{font-size:19px;padding-left:0}.hero{padding-top:42px;padding-bottom:45px}.hero h1{font-size:clamp(45px,12vw,70px)!important}.lead{font-size:16px}.hero-actions{display:block}.hero-actions>span{display:block;margin-top:14px}.hero-art{min-height:330px!important}.intro{grid-template-columns:1fr;gap:0}.intro-right{padding-top:12px}.intro-right p{font-size:17px}.process{padding:75px 0}.steps{grid-template-columns:1fr;gap:28px;margin-top:50px}.steps h3{margin-top:20px}.story p:not(.eyebrow){font-size:16px}.closing{padding:80px 0}.quiz-content{padding:37px 24px 20px}.quiz-top,.quiz-bottom{padding-left:24px;padding-right:24px}.quiz-panel{height:calc(100dvh - 28px)}.quiz-backdrop{padding:14px}footer{display:block;line-height:2}}
.site-header .brand{display:block;line-height:0;flex:none}
.site-header .brand img{display:block;width:112px;height:112px;object-fit:contain;object-position:left center}
.site-header{min-height:128px}
body[data-direction=lake] .site-header .brand img,body[data-direction=editorial] .site-header .brand img{filter:brightness(0) saturate(100%) invert(13%) sepia(16%) saturate(1448%) hue-rotate(161deg) brightness(93%) contrast(91%)}
@media(max-width:600px){.site-header{min-height:94px}.site-header .brand img{width:80px;height:80px}}

/* Three image-led directions. The supplied mark stays intact above generated atmosphere. */
.prototype-bar{position:sticky;top:0;z-index:30;box-shadow:0 1px 0 #10253118}
.prototype-label:before{content:"";display:inline-block;width:9px;height:9px;border:2px solid #bf9c66;transform:rotate(45deg);margin-right:13px}
.site-header{position:relative;z-index:3}
.hero{isolation:isolate;overflow:hidden}
.hero-art:after{pointer-events:none}
.hero-art img{transition:transform .65s ease}
.hero-index{position:absolute;right:6.5%;bottom:84px;z-index:3;display:flex;gap:22px;align-items:center;writing-mode:vertical-rl;color:#f7f4eb;font-size:10px;font-weight:700;letter-spacing:.17em}
.hero-index span{opacity:.8}
.hero-orbit{display:none}
body[data-direction=forest] .hero,body[data-direction=editorial] .hero{display:block;max-width:none;width:100%;min-height:790px;padding:0 6.5%;background:#142633}
body[data-direction=forest] .hero-art,body[data-direction=editorial] .hero-art{position:absolute;inset:0;z-index:-1;min-height:0;background:transparent}
body[data-direction=forest] .hero-art img,body[data-direction=editorial] .hero-art img{object-position:center center;animation:sceneDrift 22s ease-in-out infinite alternate}
@keyframes sceneDrift{to{transform:scale(1.075) translateY(-1.5%)}}
body[data-direction=forest] .hero-art:after{background:linear-gradient(90deg,#101c2bee 0%,#142636b3 40%,#14253624 85%),linear-gradient(0deg,#0e1a29c7,transparent 55%)}
body[data-direction=forest] .hero:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.26;filter:blur(42px);mix-blend-mode:screen;background:radial-gradient(ellipse at 55% 55%,#cbd9e3a8,transparent 48%);animation:fogFloat 17s ease-in-out infinite alternate}
@keyframes fogFloat{to{transform:translate(6%,4%) scale(1.1)}}
body[data-direction=forest] .hero-copy,body[data-direction=editorial] .hero-copy{width:min(850px,78%);padding:112px 0 122px;align-self:auto}
body[data-direction=forest] .hero h1{font-size:clamp(67px,7.7vw,120px);line-height:1.04}
body[data-direction=forest] .hero h1 em{color:#d7b990}
body[data-direction=forest] .hero .lead,body[data-direction=editorial] .hero .lead{color:#e1e9e9}
body[data-direction=forest] .hero-bottom,body[data-direction=editorial] .hero-bottom{bottom:28px}
body[data-direction=forest] .hero-art .art-caption,body[data-direction=editorial] .hero-art .art-caption{display:none}
body[data-direction=forest] .hero-actions>span,body[data-direction=editorial] .hero-actions>span{color:#d6e0df}
body[data-direction=forest] .process{background:#1a2b38}
.manifesto{padding:98px 0 103px;background:var(--panel);position:relative;overflow:hidden}
.manifesto:before{content:"";position:absolute;right:-170px;top:-260px;width:660px;height:660px;border:1px solid #92a9ad28;border-radius:50%;box-shadow:0 0 0 105px #92a9ad0b,0 0 0 210px #92a9ad09}
.manifesto .shell{position:relative}
.manifesto span,.manifesto small{font-size:10px;font-weight:700;letter-spacing:.17em;color:var(--accent)}
.manifesto p{font-family:Manrope,Arial,sans-serif;letter-spacing:-.055em;font-weight:600;line-height:1.17;font-size:clamp(35px,4.7vw,72px);max-width:1050px;margin:32px 0}
.manifesto p em{font-style:normal;color:var(--accent)}
.manifesto small{color:var(--muted)}
body[data-direction=lake] .hero{min-height:820px;padding-top:25px;padding-bottom:100px;grid-template-columns:55% 45%;align-items:center}
body[data-direction=lake] .hero-art{height:620px;min-height:620px;border-radius:49% 49% 0 0;overflow:hidden;align-self:center}
body[data-direction=lake] .hero-art .art-lake{object-position:62% center;animation:alpineFloat 20s ease-in-out infinite alternate}
@keyframes alpineFloat{to{transform:scale(1.07) translateY(-1%)}}
body[data-direction=lake] .hero-art:after{background:linear-gradient(0deg,#213d462e,transparent 54%)}
body[data-direction=lake] .hero-art .art-caption{display:none}
body[data-direction=lake] .hero-copy{padding:0 5% 10px 0}
body[data-direction=lake] .hero h1{font-size:clamp(68px,7.4vw,112px);line-height:1.03}
body[data-direction=lake] .hero-index{right:9%;bottom:138px;color:white;text-shadow:0 1px 6px #183c44}
body[data-direction=lake] .hero-bottom{bottom:38px}
body[data-direction=lake] .manifesto{background:#d5e2dd}
body[data-direction=lake] .manifesto:before{border-color:#34696a22;box-shadow:0 0 0 105px #34696a08,0 0 0 210px #34696a06}
body[data-direction=lake] .story h2{font-family:Georgia,serif;font-style:italic;font-weight:400;letter-spacing:-.045em}
body[data-direction=editorial] .hero{color:#f2f2ed;background:#142634}
body[data-direction=editorial] .site-header .brand img{filter:none}
body[data-direction=editorial] .site-header{border-color:#ffffff3a}
body[data-direction=editorial] .header-cta{color:#f2f2ed}
body[data-direction=editorial] .location{color:#d5e0e0}
body[data-direction=editorial] .hero-art:after{background:linear-gradient(90deg,#0e1e2be8 0%,#102434a8 46%,#10253618 100%),linear-gradient(0deg,#0f2030c7,transparent 55%)}
body[data-direction=editorial] .hero-copy{width:min(1100px,82%);padding-top:100px}
body[data-direction=editorial] .hero .eyebrow{display:none}
body[data-direction=editorial] .hero h1{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(100px,11vw,175px);line-height:.84;letter-spacing:-.025em;font-weight:600;text-transform:uppercase;margin-top:55px}
body[data-direction=editorial] .hero h1 em{color:#d4b480}
body[data-direction=editorial] .hero-orbit{display:block;position:absolute;z-index:1;width:375px;height:375px;border:1px solid #dbc29470;border-radius:50%;right:9%;top:31%;box-shadow:0 0 0 72px #dbc2940d,0 0 0 144px #dbc29408;animation:orbit 24s linear infinite}
body[data-direction=editorial] .hero-orbit span{display:block;width:8px;height:8px;background:#e1c190;border-radius:50%;position:absolute;top:49px;left:54px;box-shadow:0 0 24px #e1c190}
@keyframes orbit{to{transform:rotate(360deg)}}
body[data-direction=editorial] .hero-index{color:#f6f2ea}
body[data-direction=editorial] .intro h2,body[data-direction=editorial] .process h2,body[data-direction=editorial] .closing h2{font-family:'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;letter-spacing:-.02em;line-height:.95}
body[data-direction=editorial] .intro h2{font-size:clamp(64px,6vw,106px)}
body[data-direction=editorial] .manifesto p{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(60px,6.2vw,104px);font-weight:500;text-transform:uppercase;letter-spacing:-.02em}
body[data-direction=editorial] .manifesto small{color:#b7c6c8}
body[data-direction=editorial] .process h2{font-size:clamp(65px,6.2vw,104px)}
body[data-direction=editorial] .story h2{font-family:'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;letter-spacing:-.015em;font-size:clamp(55px,5.8vw,95px)}
body[data-direction=editorial] .closing h2{font-size:clamp(75px,8vw,120px)}
@media(max-width:900px){body[data-direction=forest] .hero,body[data-direction=editorial] .hero{min-height:760px}body[data-direction=forest] .hero-copy,body[data-direction=editorial] .hero-copy{width:95%}body[data-direction=lake] .hero{grid-template-columns:1fr;min-height:900px;padding-top:55px}body[data-direction=lake] .hero-copy{padding:10px 0 25px;position:relative;z-index:2}body[data-direction=lake] .hero-art{height:440px;min-height:440px;border-radius:47% 47% 0 0;width:100%}body[data-direction=lake] .hero-index{bottom:100px}}
@media(max-width:600px){body[data-direction=forest] .hero,body[data-direction=editorial] .hero{min-height:720px;padding:0 6% 45px}body[data-direction=forest] .hero-copy,body[data-direction=editorial] .hero-copy{width:100%;padding:106px 0 35px}body[data-direction=forest] .hero h1{font-size:clamp(58px,13vw,78px)}body[data-direction=editorial] .hero h1{font-size:clamp(78px,18vw,110px)!important;margin-top:40px}body[data-direction=editorial] .hero-orbit{width:230px;height:230px;right:-55px;top:47%;opacity:.45}body[data-direction=lake] .hero{min-height:860px;padding-top:33px}body[data-direction=lake] .hero h1{font-size:clamp(55px,12vw,75px)}body[data-direction=lake] .hero-art{height:370px;min-height:370px}body[data-direction=lake] .hero-copy{padding:0 0 17px}body[data-direction=lake] .hero-bottom{bottom:20px}body[data-direction=lake] .hero-index,body[data-direction=forest] .hero-index,body[data-direction=editorial] .hero-index{display:none}.manifesto{padding:73px 0 80px}.manifesto p{font-size:clamp(36px,9vw,58px)}body[data-direction=editorial] .manifesto p{font-size:clamp(55px,12vw,82px)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
body[data-direction=editorial] .site-header .brand img{filter:brightness(0) saturate(100%) invert(13%) sepia(16%) saturate(1448%) hue-rotate(161deg) brightness(93%) contrast(91%)}
body[data-direction=editorial] .site-header{border-color:#243b4438}
body[data-direction=editorial] .site-header .header-cta{color:#142632}
body[data-direction=editorial] .site-header .location{color:#4b5d63}

/* Email enquiry flow. No details leave the tab until the visitor opens a draft. */
footer a{color:var(--muted);text-decoration-thickness:1px;text-underline-offset:4px;overflow-wrap:anywhere}
.contact-input{font-size:16px;border-radius:0}
.contact-input:focus-visible{outline:3px solid #a2814a;outline-offset:2px}
.field-label span{font-weight:400}
.answer-consent{display:flex;align-items:flex-start;gap:12px;margin:24px 0 0;font-size:14px;line-height:1.5;color:#284956}
.answer-consent input{margin-top:4px;accent-color:#173d49;width:18px;height:18px;flex-shrink:0}
.answer-consent small{display:block;color:#68797d;font-size:12px;margin-top:4px}
.assessment-note{color:#49616a;font-size:14px;line-height:1.6;border-left:2px solid #b99156;padding-left:15px}
.draft-recipient,.draft-subject{font-size:13px;color:#49616a;overflow-wrap:anywhere}
.draft-recipient a{color:#173d49;text-underline-offset:3px}
.draft-message{white-space:pre-wrap;overflow-wrap:anywhere;font:14px/1.7 'DM Sans',Arial,sans-serif;color:#284956;border-top:1px solid #c8d1cf;border-bottom:1px solid #c8d1cf;padding:20px 0;margin:22px 0;user-select:text}
.email-draft{display:inline-block;text-decoration:none;color:#12212b}
.secondary-button{display:inline-block;margin:16px 18px 0 0;padding:9px 0;border:0;border-bottom:1px solid #a2814a;background:none;font:600 13px 'DM Sans',Arial,sans-serif;color:#284956}
@media(max-width:600px){.email-draft{display:block;width:100%}.draft-message{font-size:13px}.draft-recipient,.draft-subject{font-size:12px}}
