
:root{--navy:#1b2430;--navy2:#151b24;--brass:#8c6d43;--ink:#33383f;--muted:#5a5f66;--cream:#f0f0ee;--white:#fff;--pad:clamp(20px,4.2vw,60px)}
*,*:before,*:after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font-family:Manrope,Arial,sans-serif;-webkit-font-smoothing:antialiased}
button,a{-webkit-tap-highlight-color:transparent}
button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}
button:focus-visible,a:focus-visible{outline:3px solid #a98b60;outline-offset:4px}
.site-header{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:22px var(--pad)}
.logo{display:inline-flex;align-items:flex-end;gap:12px;color:var(--navy);white-space:nowrap;text-decoration:none}
.logo-tile{display:block;position:relative;width:40px;height:40px;flex:none;background:var(--navy);color:#fff}

.logo-dot{position:absolute;top:5px;right:5px;width:7px;height:7px;background:var(--brass);border-radius:50%}
.logo-letters{position:absolute;left:5px;bottom:3px;font-family:'Inter Tight',Arial,sans-serif;font-size:19px;font-weight:900;line-height:19px;letter-spacing:-.07em;color:#fff}
.logo-wordmark{font-family:'Inter Tight',Arial,sans-serif;font-size:22px;font-weight:800;line-height:17px;letter-spacing:-.02em;color:var(--navy)}
.main-nav{display:flex;align-items:center;gap:30px;color:var(--navy);font-family:'Inter Tight',Arial,sans-serif;font-size:15px;font-weight:650}
.main-nav a:not(.nav-contact):hover{color:var(--brass)}
.nav-contact{padding:11px 19px;border-radius:999px;color:white;background:var(--navy)}
.hero-copy{padding:clamp(48px,7vw,110px) var(--pad) 44px}
.hero-copy h1{margin:0;max-width:972px;color:var(--navy);font-family:'Inter Tight',Arial,sans-serif;font-size:clamp(47px,8.4vw,128px);font-weight:800;line-height:.90;letter-spacing:-.035em}
.dot{color:var(--brass)}
.hero-copy p{margin:21px 0 0;max-width:36ch;color:var(--navy);font-family:'Inter Tight',Arial,sans-serif;font-weight:700;font-size:clamp(19px,1.65vw,24px);line-height:1.3}
.experience{margin:0}
.scene{position:relative;width:100%;overflow:hidden;isolation:isolate;border-radius:0;background:#dadada}
.scene-photo{display:block;width:100%;height:auto;aspect-ratio:1672/941;object-fit:cover;filter:grayscale(100%)}
.scene-label{position:absolute;top:21px;left:24px;z-index:2;display:inline-flex;gap:12px;align-items:center;padding:10px 14px;background:rgba(255,255,255,.90);color:var(--navy);font-family:'Inter Tight',Arial,sans-serif;font-weight:700;letter-spacing:.065em;font-size:12px;backdrop-filter:blur(6px)}
.scene-label .label-muted{font-family:Manrope,Arial,sans-serif;font-weight:600;color:#62666b;letter-spacing:0}
.marker{position:absolute;z-index:3;transform:translate(-50%,-50%);display:inline-flex;align-items:center;gap:8px;border:0;border-radius:999px;padding:7px 11px 7px 7px;white-space:nowrap;background:rgba(255,255,255,.55);backdrop-filter:blur(14px) saturate(110%);-webkit-backdrop-filter:blur(14px) saturate(110%);border:1px solid rgba(255,255,255,.64);color:var(--navy);font-family:'Inter Tight',Arial,sans-serif;font-weight:700;font-size:13px;box-shadow:0 3px 15px rgba(0,0,0,.12);transition:background .16s,color .16s,transform .16s;touch-action:manipulation}
.marker:hover,.marker[aria-expanded="true"]{background:rgba(27,36,48,.55);color:white}
.marker:hover{transform:translate(-50%,-50%) scale(1.025)}
.marker-icon{display:grid;place-items:center;width:23px;height:23px;border:1px solid currentColor;border-radius:50%;font-size:16px;line-height:1;font-weight:500}
.marker[aria-expanded="true"] .marker-icon{color:#e1c4a1}
.popover{position:absolute;z-index:6;display:none;width:min(344px,calc(100% - 18px));padding:16px 18px 15px;background:rgba(249,249,249,.70);backdrop-filter:blur(30px) saturate(108%);-webkit-backdrop-filter:blur(30px) saturate(108%);color:var(--navy);box-shadow:0 22px 54px rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.56);border-radius:20px;max-height:calc(100% - 16px);overflow:auto;overscroll-behavior:contain}
.popover.is-open{display:block;animation:pop .16s ease-out}
@keyframes pop{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
.popover-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.popover-kicker{font-family:'Inter Tight',Arial,sans-serif;font-size:10px;font-weight:700;letter-spacing:.12em;color:var(--brass);text-transform:uppercase}
.popover h3{font-family:'Inter Tight',Arial,sans-serif;font-weight:800;letter-spacing:-.02em;font-size:23px;line-height:1.05;margin:5px 0 0}
.close-pop{width:28px;height:28px;flex:none;padding:0;border:0;background:#f0f0ee;border-radius:50%;display:grid;place-items:center;color:var(--navy);font-size:21px;line-height:1}
.popover-context{color:#777c84;font-size:10px;font-weight:700;margin-top:3px}
.popover-route{font-family:'Inter Tight',Arial,sans-serif;font-size:14px;font-weight:700;margin:10px 0 10px}
.popover-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 13px}
.popover-grid small{display:block;color:#737982;text-transform:uppercase;letter-spacing:.08em;font-size:9px;margin-bottom:2px;font-weight:700}
.popover-grid strong{display:block;font-size:11px;line-height:1.4;font-weight:700;overflow-wrap:anywhere}
.steps{margin-top:10px;padding-top:8px;border-top:1px solid #e7e5e2;font-size:11px;line-height:1.55;font-weight:600;color:#49505a}
.steps b{font-family:'Inter Tight',Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--brass);font-size:10px;display:block;margin-bottom:4px}

.popover-status{display:flex;justify-content:space-between;align-items:center;gap:9px;margin-top:12px;padding:8px 10px;background:rgba(238,238,237,.72);font-size:10px;font-weight:750}
.popover-status-label{font-size:9px;color:#707780;letter-spacing:.07em;text-transform:uppercase}
.popover-status-value{text-align:right}
.popover-expand{margin-top:9px}
.popover-expand summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 0 5px;font-family:'Inter Tight',Arial,sans-serif;color:var(--navy);font-size:12px;font-weight:800;cursor:pointer;list-style:none}
.popover-expand summary::-webkit-details-marker{display:none}
.popover-expand summary .arrow{color:var(--brass);font-size:15px;transition:transform .15s}
.popover-expand[open] summary .arrow{transform:rotate(180deg)}
.popover-timeline{list-style:none;padding:4px 0 0;margin:0;display:flex;flex-direction:column;gap:6px}
.popover-timeline li{display:flex;align-items:flex-start;gap:7px;font-size:10px;font-weight:650;line-height:1.4;color:#555c64}
.popover-timeline .step-dot{flex:none;margin-top:4px;width:6px;height:6px;background:#a5a8aa;border-radius:50%}
.popover-timeline li.done .step-dot{background:var(--brass)}
.popover-timeline li.next .step-dot{background:var(--navy)}
.popover-timeline li.done{color:#29333e}
.popover-timeline li .step-name{flex:1}
.popover-timeline li .step-state{font-size:9px;font-weight:600;color:#868a90;white-space:nowrap}

.demo{font-size:9px;line-height:1.4;color:#737982;margin:7px 0 0}
.experience-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:24px var(--pad) 0}
.hint{margin:0;color:var(--muted);font-family:'Inter Tight',Arial,sans-serif;font-size:13px;font-weight:600}
.action-links{display:flex;gap:10px;flex-wrap:wrap}
.pill{display:inline-flex;align-items:center;justify-content:center;min-height:47px;padding:0 21px;border-radius:999px;font-family:'Inter Tight',Arial,sans-serif;font-weight:700;font-size:15px}
.pill.primary{background:var(--navy);color:white}.pill.outline{box-shadow:inset 0 0 0 1.5px var(--navy);color:var(--navy)}
.kicker{font-family:'Inter Tight',Arial,sans-serif;font-size:12px;text-transform:uppercase;letter-spacing:.21em;font-weight:700}
.why{margin-top:120px;padding:100px var(--pad);background:var(--navy2);color:#c9cdd3;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:60px}
.why h2,.stages h2,.regions h2,.contact h2{font-family:'Inter Tight',Arial,sans-serif;font-size:clamp(38px,4.4vw,63px);font-weight:800;line-height:1;letter-spacing:-.025em;margin:18px 0 0}
.why h2{color:white;max-width:580px}.why .kicker{color:#8e949c}
.why-items{display:flex;flex-direction:column;gap:32px}
.why-items h3{font-family:'Inter Tight',Arial,sans-serif;color:white;font-size:21px;font-weight:700;margin:0 0 7px}
.why-items p{font-size:16px;line-height:1.65;margin:0;max-width:55ch}
.stages{padding:120px var(--pad)}.stages h2{color:var(--navy)}.stages .lead{margin:18px 0 45px;color:var(--muted);font-size:17px}
.stages-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 35px}
.stage{padding:16px 0}.stage-number{font-family:'Inter Tight',Arial,sans-serif;color:var(--brass);font-weight:800;font-size:12px;letter-spacing:.08em}
.stage h3{font-family:'Inter Tight',Arial,sans-serif;font-weight:750;color:var(--navy);margin:7px 0 5px;font-size:20px}.stage p{margin:0;color:var(--muted);font-size:14px;line-height:1.55}
.stage-foot{font-family:'Inter Tight',Arial,sans-serif;font-weight:750;color:var(--navy);font-size:21px;margin:35px 0 0}
.regions{padding:95px var(--pad);background:#f4f4f2}.regions h2{color:var(--navy)}.regions-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:36px;margin-top:42px}.region h3{font-family:'Inter Tight',Arial,sans-serif;font-size:23px;color:var(--navy);margin:0 0 12px}.region p{font-size:14px;line-height:1.7;color:#4d535a;margin:0}.region small{color:var(--brass);font-size:11px;letter-spacing:.10em;font-weight:750;text-transform:uppercase}
.founder{margin-top:90px;background:#f0f0ee;padding:65px var(--pad)}
.founder-inner{max-width:1250px;margin:0 auto;display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:clamp(30px,5vw,72px)}
.founder-art{width:150px;aspect-ratio:4/5;background:#d5d7d9;color:#686e76;display:flex;align-items:flex-end;justify-content:flex-start;text-align:left;padding:13px;border-radius:0 0 20px 0;font-family:'Inter Tight',Arial,sans-serif;font-size:10px;font-weight:700;line-height:1.5;letter-spacing:.08em;text-transform:uppercase}
.founder-copy{max-width:850px}
.founder-copy h2{font-family:'Inter Tight',Arial,sans-serif;font-size:clamp(34px,3.45vw,52px);letter-spacing:-.03em;line-height:1.03;margin:12px 0 17px;color:var(--navy)}
.founder-copy p{font-size:15px;line-height:1.75;color:#4b5159;max-width:76ch;margin:0 0 13px}
.founder-credit{font-family:'Inter Tight',Arial,sans-serif;font-size:15px;color:var(--navy);margin-top:15px;line-height:1.45}
.founder-credit strong{font-weight:800}
.founder-credit span{color:#616770}

.contact{padding:125px var(--pad) 135px;text-align:center;background:#fff}.contact h2{color:var(--navy);margin-bottom:26px}.contact-links{display:flex;justify-content:center;gap:22px;flex-wrap:wrap;font-size:16px;color:var(--navy)}.contact-links a{text-decoration:underline;text-underline-offset:5px;text-decoration-color:#c2a273}
footer{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:30px var(--pad);color:#707780;font-size:12px}
@media (max-width:1050px){.why{grid-template-columns:1fr}.regions-grid{grid-template-columns:1fr 1fr}.stages-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:720px){.site-header{padding:18px var(--pad)}.logo{gap:10px}.logo-tile{height:36px;width:36px}.logo-letters{font-size:17px;line-height:17px}.logo-wordmark{font-size:19px;line-height:16px}.main-nav{gap:12px;font-size:13px}.main-nav a:not(.nav-contact){display:none}.nav-contact{padding:10px 14px}.hero-copy{padding:55px var(--pad) 29px}.hero-copy h1{font-size:clamp(45px,11vw,77px);line-height:.94}.hero-copy p{font-size:19px}.scene{border-radius:0;min-height:0;aspect-ratio:1672/941}.scene-photo{height:auto;aspect-ratio:1672/941;object-fit:contain}.scene-label{left:11px;top:11px;padding:7px 9px;font-size:9px;max-width:calc(100% - 22px);gap:8px}.scene-label .label-muted{font-size:9px}.marker{font-size:10px;padding:4px 7px 4px 4px;gap:5px}.marker-icon{width:21px;height:21px;font-size:13px}.marker span.marker-name{max-width:68px;overflow:hidden;text-overflow:ellipsis}.popover{width:min(275px,calc(100% - 16px));padding:10px 12px;border-radius:17px}.popover h3{font-size:20px}.popover-route{margin:5px 0;font-size:12px}.popover-grid{gap:6px 10px}.popover-grid strong{font-size:10px}.popover-status{margin-top:8px;padding:6px 8px}.popover-expand{margin-top:6px}.popover-expand summary{padding:6px 0 3px}.demo{display:none}.experience-actions{padding-top:18px}.hint{font-size:12px}.why{margin-top:77px;padding:70px var(--pad)}.why-items h3{font-size:19px}.stages{padding:70px var(--pad)}.stages-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px}.regions{padding:70px var(--pad)}.regions-grid{grid-template-columns:1fr;gap:26px}.founder{padding:52px var(--pad);margin-top:55px}.founder-inner{grid-template-columns:105px minmax(0,1fr);gap:12px 22px;align-items:start}.founder-art{width:105px;grid-column:1;grid-row:1 / span 2}.founder-copy{display:contents}.founder-copy .kicker{grid-column:2;grid-row:1;align-self:end}.founder-copy h2{grid-column:2;grid-row:2;font-size:31px;margin:0 0 8px}.founder-copy p{grid-column:1 / -1;max-width:none;font-size:14px;margin:6px 0 0}.founder-credit{grid-column:1 / -1;font-size:13px;margin-top:8px}.contact{padding:80px var(--pad)}footer{padding-bottom:40px}}
@media(max-width:390px){.founder-inner{grid-template-columns:88px minmax(0,1fr);gap:16px}.founder-art{width:88px;padding:9px;font-size:8px}.founder-copy h2{font-size:27px} .marker[data-item="rug"] .marker-name,.marker[data-item="chair"] .marker-name,.marker[data-item="tablelamp"] .marker-name{display:none}.scene-label .label-muted{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marker,.popover{transition:none;animation:none}}

/* Editorial type and spacing system — disciplined, measured, and restrained */
h1,h2,h3{text-wrap:balance}
.hero-copy{padding:clamp(60px,7vw,96px) var(--pad) clamp(42px,4.2vw,60px)}
.hero-copy h1{max-width:1110px;font-size:clamp(49px,6.35vw,96px);line-height:1.005;letter-spacing:-.032em}
.hero-copy p{margin:25px 0 0;max-width:49ch;font-size:clamp(18px,1.46vw,21px);line-height:1.45;font-weight:650}
.kicker{line-height:1.45}
.why{gap:clamp(46px,5vw,75px);margin-top:106px;padding-top:100px;padding-bottom:100px}
.why h2,.stages h2,.regions h2,.contact h2{font-size:clamp(38px,4vw,58px);line-height:1.095;margin-top:15px;letter-spacing:-.027em}
.why-items{gap:30px;padding-top:37px}
.why-items h3{line-height:1.25;margin:0 0 10px;font-size:20px}
.why-items p{line-height:1.72}
.stages{padding-top:106px;padding-bottom:106px}
.stages .lead{margin:19px 0 42px;font-size:16px;line-height:1.65}
.stages-grid{row-gap:32px}
.stage{padding:12px 0}
.stage-number{line-height:1.4}
.stage h3{font-size:20px;line-height:1.24;margin:11px 0 9px}
.stage p{line-height:1.67}
.regions{padding-top:95px;padding-bottom:95px}
.regions-grid{margin-top:40px;gap:44px}
.region{position:relative;padding-top:27px}
.region small{position:absolute;top:0;left:0;display:block;line-height:1.35}
.region h3{line-height:1.25;margin:0 0 11px;font-size:22px}
.region p{line-height:1.76}
.founder{margin-top:0;padding-top:83px;padding-bottom:83px}
.founder-inner{align-items:center}
.founder-copy h2{max-width:820px;font-size:clamp(34px,3.25vw,48px);line-height:1.1;letter-spacing:-.026em;margin:14px 0 20px}
.founder-copy p{line-height:1.78;margin:0 0 13px}
.founder-credit{margin-top:18px;line-height:1.5}
.contact{padding-top:110px;padding-bottom:116px}
.contact h2{margin-bottom:25px}
.contact-links{line-height:1.5}
.contact-location{margin:18px 0 0;color:var(--muted);font-size:14px;line-height:1.6;letter-spacing:.01em}
/* Popover hierarchy: slightly more breathing room between labels and values */
.popover h3{font-size:22px;line-height:1.16;margin-top:7px}
.popover-context{line-height:1.5;margin-top:6px}
.popover-route{line-height:1.4;margin:12px 0}
.popover-grid{gap:12px 14px}
.popover-grid small{font-size:9px;line-height:1.4;margin-bottom:4px}
.popover-grid strong{font-size:11px;line-height:1.48}
.popover-status{margin-top:14px;line-height:1.4}
.popover-expand summary{line-height:1.4}
@media(max-width:1050px){
 .why-items{padding-top:0}
 .regions-grid{gap:32px}
}
@media(max-width:720px){
 .hero-copy{padding:53px var(--pad) 33px}
 .hero-copy h1{font-size:clamp(42px,10.9vw,72px);line-height:1.04;letter-spacing:-.035em}
 .hero-copy p{margin-top:20px;font-size:17px;line-height:1.49;max-width:34ch}
 .why{margin-top:72px;padding:66px var(--pad);gap:34px}
 .why h2,.stages h2,.regions h2,.contact h2{font-size:clamp(35px,9.25vw,48px);line-height:1.12;margin-top:14px}
 .why-items{gap:26px}
 .why-items h3{font-size:19px;margin-bottom:7px}
 .why-items p{font-size:15px;line-height:1.7}
 .stages{padding:75px var(--pad)}
 .stages .lead{font-size:15px;line-height:1.7;margin:17px 0 32px}
 .stages-grid{row-gap:20px}
 .stage h3{font-size:18px;margin:8px 0 6px}
 .stage p{font-size:13px;line-height:1.62}
 .regions{padding:75px var(--pad)}
 .regions-grid{margin-top:31px;gap:30px}
 .region{padding-top:0}
 .region small{position:static;margin-bottom:7px}
 .region h3{font-size:21px;margin-bottom:9px}
 .founder{margin-top:0;padding:65px var(--pad)}
 .founder-inner{row-gap:14px;column-gap:20px}
 .founder-copy h2{font-size:clamp(26px,7.5vw,35px);line-height:1.12;letter-spacing:-.023em;margin:0}
 .founder-copy p{font-size:14px;line-height:1.72;margin:5px 0 0}
 .founder-copy p:first-of-type{margin-top:8px}
 .founder-credit{margin-top:9px;line-height:1.5}
 .contact{padding:85px var(--pad)}
 .contact h2{margin-bottom:24px}
 .contact-links{font-size:14px;gap:12px 24px}
 .popover{border-radius:17px}
 .popover-grid{gap:8px 10px}
 .popover-grid strong{font-size:10px}
 .popover-route{margin:8px 0}
}
@media(max-width:390px){
 .founder-inner{column-gap:16px}
 .founder-copy h2{font-size:26px}
}


/* Professional finish: keep the established identity, improve only clarity and interaction. */
:root{--focus:#9a784b;--micro:#505861}
body{font-kerning:normal;font-synthesis:none}
::selection{background:#d8cab6;color:var(--navy)}
:focus-visible{outline:2px solid var(--focus);outline-offset:3px}
.main-nav a,.pill,.nav-contact{transition:color .16s ease,background-color .16s ease,box-shadow .16s ease}
.nav-contact:hover,.pill.primary:hover{background:#334151;color:#fff}
.pill.outline:hover{background:#f4f3f0}
.contact-links a:hover{color:#826440;text-decoration-thickness:2px}
/* Preserve 55% hotspot opacity and 70% information-panel opacity exactly. */
.marker{background:rgba(255,255,255,.55);backdrop-filter:blur(16px) saturate(108%);-webkit-backdrop-filter:blur(16px) saturate(108%);box-shadow:0 3px 13px rgba(0,0,0,.14);min-height:39px;letter-spacing:.005em}
.marker:hover,.marker[aria-expanded="true"]{background:rgba(27,36,48,.55)}
.marker::after{content:"";position:absolute;top:50%;left:-4px;width:44px;height:44px;transform:translateY(-50%);border-radius:50%}
.marker[aria-expanded="true"]{box-shadow:0 3px 16px rgba(0,0,0,.2)}
.popover{background:rgba(249,249,249,.70);backdrop-filter:blur(36px) saturate(105%);-webkit-backdrop-filter:blur(36px) saturate(105%);border-color:rgba(255,255,255,.65);box-shadow:0 18px 42px rgba(0,0,0,.21);padding:17px 18px 15px}
.popover-head{padding-bottom:12px;margin-bottom:13px;border-bottom:1px solid rgba(27,36,48,.14)}
.popover-kicker{font-size:10px;letter-spacing:.095em;color:#775a35}
.popover h3{font-size:23px;font-weight:800;line-height:1.14;margin-top:5px}
.popover-context{font-size:11px;color:#46515b;font-weight:600;line-height:1.42;margin-top:7px}
.popover-grid{gap:12px 15px}
.popover-grid small{font-size:10px;line-height:1.35;letter-spacing:.055em;color:#545c65;margin-bottom:3px;font-weight:700}
.popover-grid strong{font-size:12px;line-height:1.47;color:#202b37;font-weight:700;overflow-wrap:break-word}
.close-pop{width:36px;height:36px;background:rgba(255,255,255,.62);border:1px solid rgba(27,36,48,.12);font-size:22px;transition:background .16s}
.close-pop:hover{background:#fff}
.popover-status{border-radius:5px;margin-top:14px;padding:9px 10px;background:rgba(255,255,255,.52);gap:12px;align-items:flex-start}
.popover-status-label{font-size:10px;color:#545c65;line-height:1.4;flex:none}
.popover-status-value{font-size:11px;font-weight:750;line-height:1.45}
.progress-track{display:flex;gap:4px;height:5px;margin:12px 0 4px}
.progress-segment{flex:1;min-width:0;border-radius:99px;background:rgba(61,69,77,.21)}
.progress-segment.done{background:#8c785f}
.progress-segment.next{background:rgba(27,36,48,.56)}
.popover-expand summary{font-size:13px;min-height:36px;line-height:1.4;padding:8px 0 3px}
.popover-timeline{gap:8px;padding-top:8px}
.popover-timeline li{font-size:11px;line-height:1.45}
.popover-timeline li .step-state{font-size:10px;color:#606a75}
.demo{font-size:10px;color:#59626b;margin-top:10px}
.hero-copy p{font-weight:600;color:#29333e}
.why-items p,.founder-copy p,.region p,.stage p{font-weight:450}
@media(max-width:720px){
 .marker{min-height:31px}
 .popover{padding:11px 13px 12px;width:min(295px,calc(100% - 16px));border-radius:15px}
 .popover-head{margin-bottom:9px;padding-bottom:8px}
 .popover h3{font-size:19px;margin-top:3px}
 .popover-context{font-size:10.5px;margin-top:4px}
 .popover-grid{gap:8px 10px}
 .popover-grid small{font-size:9px;margin-bottom:2px}
 .popover-grid strong{font-size:11px;line-height:1.4}
 .popover-status{padding:7px 8px;margin-top:8px}
 .popover-status-label{font-size:9px}
 .popover-status-value{font-size:10px}
 .progress-track{margin:8px 0 3px}
 .close-pop{width:32px;height:32px}
 .popover-expand summary{font-size:12px;min-height:32px}
 .popover-timeline li{font-size:10px}
 .scene-label{font-size:9px}
}
@media(max-width:390px){
 .hero-copy p{font-weight:600}
 .scene-label{max-width:calc(100% - 22px)}
}
@media(prefers-reduced-motion:reduce){
 .popover.is-open{animation:none}
 .marker:hover{transform:translate(-50%,-50%)}
 .main-nav a,.pill,.nav-contact,.close-pop{transition:none}
}

/* Small-phone adaptation: same photographic experience, readable floating detail panel. */
@media(max-width:480px){
 .popover{position:fixed;left:12px!important;right:12px;top:auto!important;bottom:12px;width:auto;max-height:min(70dvh,540px);padding:16px 17px;border-radius:18px;z-index:40}
 .popover h3{font-size:22px}
 .popover-grid{gap:12px 13px}
 .popover-grid small{font-size:10px}
 .popover-grid strong{font-size:12px}
 .popover-status{margin-top:12px}
 .popover-expand summary{min-height:36px}
 .close-pop{width:38px;height:38px}
}


/* Lobos Global refinement: keep established world; enhance differentiation and compact sequence. */
.hero-copy{padding-bottom:clamp(42px,4vw,60px)}
.hero-copy .hero-subtitle{max-width:58ch}
.hero-difference{margin-top:clamp(30px,3.8vw,52px);max-width:920px}
.hero-difference h2{margin:0 0 12px;color:var(--navy);font-family:'Inter Tight',Arial,sans-serif;font-size:clamp(22px,2.25vw,30px);line-height:1.22;font-weight:800;letter-spacing:-.018em}
.hero-difference p{font-family:Manrope,Arial,sans-serif;font-size:clamp(15px,1.1vw,17px);font-weight:450;line-height:1.72;color:#46505a;margin:0;max-width:90ch}
.hero-difference .hero-assurance{color:var(--navy);font-size:clamp(14px,1.05vw,16px);font-weight:700;margin-top:15px;line-height:1.55}
/* Four concise, evenly aligned phases instead of a scattered service catalog. */
.stages{padding-top:clamp(75px,7vw,110px);padding-bottom:clamp(75px,7vw,110px)}
.stages .lead{max-width:760px;margin:17px 0 34px}
.stages-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:clamp(20px,3.2vw,52px);row-gap:24px;align-items:start}
.stages-grid .stage{min-width:0;padding:0}
.stages-grid .stage-number{display:block;font-size:13px;line-height:1.2;margin:0 0 16px}
.stages-grid .stage h3{font-size:clamp(19px,1.5vw,23px);line-height:1.22;margin:0 0 10px;letter-spacing:-.015em}
.stages-grid .stage p{font-size:14px;line-height:1.72;margin:0;color:#535b63}
.stages .stage-foot{font-size:16px;line-height:1.5;letter-spacing:-.01em;margin:35px 0 0}
/* Frosted glass: exact requested translucent fill, no white outlines on hotspots. */
.marker{background:rgba(255,255,255,.55);border:0!important;backdrop-filter:blur(18px) saturate(108%);-webkit-backdrop-filter:blur(18px) saturate(108%);box-shadow:0 4px 16px rgba(0,0,0,.13)}
.marker:hover,.marker[aria-expanded="true"]{background:rgba(27,36,48,.55)}
.popover{background:rgba(249,249,249,.50);backdrop-filter:blur(48px) saturate(103%);-webkit-backdrop-filter:blur(48px) saturate(103%);box-shadow:0 24px 64px rgba(0,0,0,.26);border:1px solid rgba(255,255,255,.38)}
@media(max-width:940px){
 .stages-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 36px}
}
@media(max-width:720px){
 .hero-difference{margin-top:29px;max-width:100%}
 .hero-difference h2{font-size:23px;line-height:1.24;margin-bottom:10px}
 .hero-difference p{font-size:14px;line-height:1.72}
 .hero-difference .hero-assurance{margin-top:12px;font-size:13px;line-height:1.65}
 .stages{padding-top:70px;padding-bottom:70px}
 .stages-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 21px}
 .stages-grid .stage-number{margin-bottom:11px;font-size:12px}
 .stages-grid .stage h3{font-size:18px;line-height:1.3;margin-bottom:8px}
 .stages-grid .stage p{font-size:13px;line-height:1.64}
 .stages .stage-foot{font-size:15px;margin-top:28px}
}
@media(max-width:380px){
 .stages-grid{grid-template-columns:1fr;gap:22px}
 .stages-grid .stage{display:grid;grid-template-columns:32px 1fr;column-gap:10px;align-items:start}
 .stages-grid .stage-number{grid-column:1;grid-row:1 / span 2;padding-top:4px}
 .stages-grid .stage h3{grid-column:2;grid-row:1;margin-bottom:5px}
 .stages-grid .stage p{grid-column:2;grid-row:2}
}

/* Founder photo: the authentic original supplied by the founder; grayscale presentation only. */
.founder-art{overflow:hidden;background:#c9cccd;padding:0!important;position:relative;align-self:start}
.founder-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 43%;filter:grayscale(100%) contrast(1.05);-webkit-filter:grayscale(100%) contrast(1.05)}
/* Preserve the approved 50% fill while lifting and softening the dark photograph below the text. */
.popover{background:rgba(249,249,249,.50);backdrop-filter:blur(52px) brightness(1.8) saturate(95%);-webkit-backdrop-filter:blur(52px) brightness(1.8) saturate(95%);border:1px solid rgba(255,255,255,.32);box-shadow:0 24px 60px rgba(0,0,0,.24)}
/* Keep the interactive image and controls undisturbed. */

/* Editorial introduction: one hero, one supporting idea, a quiet operational explanation. */
.hero-copy{padding:clamp(52px,5.4vw,82px) var(--pad) clamp(40px,3.8vw,54px)}
.hero-copy h1{max-width:1160px;font-size:clamp(50px,6.35vw,96px);line-height:1.005;letter-spacing:-.034em; text-wrap:balance}
.hero-intro{display:grid;grid-template-columns:minmax(0,0.88fr) minmax(0,1fr);gap:clamp(36px,5vw,90px);max-width:1170px;align-items:start;margin-top:clamp(30px,3.4vw,48px)}
.hero-intro p{margin:0}
.hero-intro .hero-lead{font-family:'Inter Tight',Arial,sans-serif;font-size:clamp(23px,2.05vw,30px);font-weight:740;line-height:1.22;letter-spacing:-.022em;color:var(--navy);max-width:22ch}
.hero-explainer{max-width:59ch}
.hero-intro .hero-explainer p{font-family:Manrope,Arial,sans-serif;font-size:clamp(15px,1.13vw,17px);line-height:1.73;font-weight:450;color:#454d58;letter-spacing:0}
.hero-intro .hero-explainer .hero-choice{font-size:14px;line-height:1.48;color:var(--navy);font-weight:700;margin-top:15px}
/* A modern editorial panoramic crop: the actual photo is unchanged. */
@media(min-width:1024px){
  .scene{aspect-ratio:2 / 1;min-height:0;}
  .scene-photo{position:absolute;inset:0;display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center center}
}
@media(max-width:1023px){
 .scene{aspect-ratio:1672 / 941}
 .scene-photo{width:100%;height:100%;object-fit:contain}
}
@media(max-width:760px){
 .hero-copy{padding:clamp(44px,8vw,60px) var(--pad) 34px}
 .hero-copy h1{font-size:clamp(42px,10.8vw,68px);line-height:1.03;letter-spacing:-.035em;text-wrap:pretty}
 .hero-intro{display:block;margin-top:24px}
 .hero-intro .hero-lead{font-size:clamp(21px,5.2vw,27px);line-height:1.25;max-width:28ch}
 .hero-explainer{margin-top:16px;max-width:63ch}
 .hero-intro .hero-explainer p{font-size:15px;line-height:1.66}
 .hero-intro .hero-explainer .hero-choice{font-size:13px;margin-top:11px}
}

/* FINAL: approved panoramic image. The original photo is kept pixel for pixel. */
.scene{height:clamp(490px,41.7vw,860px);aspect-ratio:auto;min-height:0}
.scene-photo{position:absolute;inset:0;display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center center;filter:none}
.hero-copy{padding:clamp(52px,5vw,82px) var(--pad) clamp(43px,3.7vw,55px)}
.hero-copy h1{font-size:clamp(53px,5.35vw,91px);max-width:1130px;line-height:.99;letter-spacing:-.035em}
.hero-intro{max-width:1150px;gap:clamp(44px,5vw,85px);margin-top:clamp(28px,3vw,44px)}
.hero-intro .hero-lead{font-size:clamp(22px,2vw,29px)}
.hero-intro .hero-explainer p{font-size:clamp(14.5px,1.1vw,16px);line-height:1.75}
.hero-intro .hero-explainer .hero-choice{font-size:14px;margin-top:16px}
/* Cohesive, quiet markers and floating information. */
.marker{border:0!important;background:rgba(255,255,255,.55);box-shadow:0 5px 19px rgba(0,0,0,.15);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.popover{background:rgba(249,249,249,.50);box-shadow:0 22px 59px rgba(0,0,0,.25);backdrop-filter:blur(52px) brightness(1.7);-webkit-backdrop-filter:blur(52px) brightness(1.7)}
/* Keep page typography measured on ultrawide screens instead of scaling without limit. */
@media(min-width:1900px){
 .hero-copy{padding-left:max(var(--pad),calc((100vw - 1730px)/2));padding-right:max(var(--pad),calc((100vw - 1730px)/2))}
 .site-header,.experience-actions,footer{padding-left:max(var(--pad),calc((100vw - 2100px)/2));padding-right:max(var(--pad),calc((100vw - 2100px)/2))}
 .scene{height:860px}
}
@media(max-width:1023px){
 .scene{height:auto;aspect-ratio:2048/1081;min-height:0}
 .scene-photo{object-fit:contain}
}
@media(max-width:760px){
 .hero-copy{padding:48px var(--pad) 34px}
 .hero-copy h1{font-size:clamp(42px,10.6vw,67px);line-height:1.04}
 .hero-intro{margin-top:25px;display:block}
 .hero-intro .hero-lead{font-size:clamp(21px,5vw,27px)}
 .hero-intro .hero-explainer p{font-size:14px;line-height:1.68}
 .hero-intro .hero-explainer .hero-choice{font-size:13px}
 .scene-label{left:10px;top:10px}
 .marker{padding:4px 7px 4px 4px;min-height:29px;font-size:10px}
 .marker-icon{height:20px;width:20px}
}
@media(max-width:480px){
 .scene-label{letter-spacing:.02em;font-size:8px;padding:7px 8px}
 .marker .marker-name{max-width:56px;overflow:hidden;text-overflow:ellipsis}
 .marker[data-item="lamp"]{z-index:4}
 .marker[data-item="joinery"] .marker-name,.marker[data-item="tablelamp"] .marker-name,.marker[data-item="rug"] .marker-name,.marker[data-item="chair"] .marker-name,.marker[data-item="planter"] .marker-name{display:none}
}
@media(prefers-reduced-motion:reduce){.marker,.popover{transition:none!important;animation:none!important}}



/* Launch hardening: keyboard navigation, responsive interaction, and measured layout. */
.skip-link{position:absolute;top:-90px;left:18px;z-index:100;background:var(--navy);color:white;padding:12px 17px;font:700 15px 'Inter Tight',Arial,sans-serif;border-radius:8px}
.skip-link:focus{top:12px}
html{scroll-padding-top:16px}
body{overflow-x:clip}
.hero-intro,.why,.stages-grid,.regions-grid,.founder-inner{min-width:0}
.hero-intro>*,.why>*,.regions-grid>*,.founder-inner>*{min-width:0}
.marker:focus-visible,.close-pop:focus-visible,.popover-expand summary:focus-visible,.mobile-item:focus-visible{outline:3px solid var(--brass);outline-offset:3px}
.marker:focus-visible{z-index:7}
.popover:focus{outline:0}
.popover h3{overflow-wrap:break-word}
.popover-grid>*{min-width:0}
.popover-grid strong{overflow-wrap:anywhere}
.mobile-items{display:none}
@media(max-width:600px){
  .mobile-items{display:block;padding:16px var(--pad) 0}
  .mobile-items-label{font:700 12px 'Inter Tight',Arial,sans-serif;letter-spacing:.04em;color:var(--muted);margin:0 0 10px}
  .mobile-items-list{display:flex;gap:9px;overflow-x:auto;padding:2px 2px 12px;scrollbar-width:thin;scrollbar-color:#c0bbb4 transparent;overscroll-behavior-x:contain}
  .mobile-item{flex:none;min-height:42px;padding:0 14px;border:1px solid #d5d4d0;background:#fff;border-radius:999px;color:var(--navy);font:700 13px 'Inter Tight',Arial,sans-serif;white-space:nowrap}
  .mobile-item[aria-expanded="true"]{background:var(--navy);border-color:var(--navy);color:#fff}
  .scene-label{max-width:calc(100% - 20px)}
  .scene{isolation:auto}
  .popover{z-index:50}
  .experience-actions{gap:14px}
  .action-links{width:100%}
  .action-links .pill{flex:1}
}
@media(min-width:761px) and (max-width:1040px){
 .hero-copy h1{font-size:clamp(53px,6.7vw,76px)}
}
@media(max-width:420px){
 .site-header{gap:10px}
 .hero-copy h1{font-size:clamp(41px,10.6vw,49px)}
 .scene-label{font-size:8px}
 .experience-actions .hint{font-size:12px}
 .founder-inner{grid-template-columns:minmax(80px,95px) minmax(0,1fr)}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media(forced-colors:active){.marker,.mobile-item,.popover{border:1px solid CanvasText!important}.popover{background:Canvas}.marker{background:Canvas}}
