:root{--obsidian:#0c0d0d;--charcoal:#25282a;--graphite:#45484a;--stone:#b4a084;--sand:#d1c1a9;--limestone:#e9e4da;--ivory:#f4f1eb;--white:#fff;--ease:cubic-bezier(.22,1,.36,1);--header-h:86px}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ivory)}body{color:var(--obsidian);background:var(--ivory);margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow-x:hidden}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}img{width:100%;display:block}button{font:inherit}::selection{background:var(--stone);color:var(--obsidian)}.grain{pointer-events:none;z-index:200;opacity:.045;mix-blend-mode:multiply;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='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.75'/%3E%3C/svg%3E");position:fixed;inset:0}.progress{z-index:250;background:#b4a0841f;width:3px;height:100vh;position:fixed;top:0;right:0}.progress i{background:var(--stone);transform-origin:top;width:100%;height:100%;display:block;transform:scaleY(0)}.site-header{height:var(--header-h);z-index:120;color:#fff;transition:.6s var(--ease);justify-content:space-between;align-items:center;padding:0 clamp(20px,4vw,64px);display:flex;position:fixed;top:0;left:0;right:0}.site-header.scrolled{color:var(--obsidian);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f4f1ebd6;border-bottom:1px solid #0c0d0d14;height:72px}.brand{align-items:center;gap:14px;min-width:126px;display:flex}.brand img{mix-blend-mode:screen;filter:brightness(8)grayscale();width:126px;height:auto;transition:.5s var(--ease)}.site-header.scrolled .brand img{mix-blend-mode:multiply;filter:grayscale()contrast(1.15)}.nav{letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:30px;font-size:12px;display:flex}.nav a{padding:10px 0;position:relative}.nav a:after{content:"";transform-origin:100%;width:100%;height:1px;transition:.5s var(--ease);background:currentColor;position:absolute;bottom:4px;left:0;transform:scaleX(0)}.nav a:hover:after,.nav a:focus-visible:after{transform-origin:0;transform:scaleX(1)}.header-cta{border:1px solid;padding:14px 18px!important}.header-cta:after{display:none}.menu-btn{color:inherit;background:0 0;border:0;width:44px;height:44px;display:none;position:relative}.menu-btn span,.menu-btn:before,.menu-btn:after{content:"";height:1px;transition:.4s var(--ease);background:currentColor;position:absolute;left:10px;right:10px}.menu-btn:before{top:15px}.menu-btn span{top:22px}.menu-btn:after{top:29px}.menu-btn.active span{opacity:0}.menu-btn.active:before{transform:translateY(7px)rotate(45deg)}.menu-btn.active:after{transform:translateY(-7px)rotate(-45deg)}.hero{color:#fff;background:#111;min-height:100svh;position:relative;overflow:hidden}.hero-media{position:absolute;inset:0}.hero-slide{opacity:0;transition:opacity 1.4s var(--ease), transform 7s linear, clip-path 1.3s var(--ease);clip-path:inset(0 100% 0 0);position:absolute;inset:-2%;transform:scale(1.06)}.hero-slide.active{opacity:1;clip-path:inset(0);transform:scale(1)}.hero-slide img{object-fit:cover;object-position:center;width:104%;height:104%}.hero:after{content:"";background:linear-gradient(90deg,#050707b8 0%,#0507074d 48%,#05070747 100%),linear-gradient(#0000 55%,#0507078c);position:absolute;inset:0}.hero-grid{z-index:2;pointer-events:none;background-image:linear-gradient(#ffffff0e 1px,#0000 1px),linear-gradient(90deg,#ffffff0e 1px,#0000 1px);background-size:25vw 25vw;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 80%);mask-image:linear-gradient(#000,#0000 80%)}.hero-content{z-index:3;grid-template-columns:1.35fr .65fr;align-items:end;min-height:100svh;padding:clamp(130px,18vh,210px) clamp(20px,6vw,96px) clamp(48px,8vh,82px);display:grid;position:relative}.eyebrow{letter-spacing:.28em;text-transform:uppercase;align-items:center;gap:14px;font-size:11px;display:flex}.eyebrow:before{content:"";opacity:.6;background:currentColor;width:34px;height:1px}.hero-title{letter-spacing:-.06em;text-transform:uppercase;margin:24px 0 34px;font-size:clamp(64px,10.6vw,172px);font-weight:700;line-height:.78}.line-mask{padding-bottom:.08em;display:block;overflow:hidden}.line-inner{transition:1.05s var(--ease);display:block;transform:translateY(115%)}.hero.ready .line-inner{transform:translateY(0)}.hero.ready .line-mask:nth-child(2) .line-inner{transition-delay:.11s}.hero.ready .line-mask:nth-child(3) .line-inner{transition-delay:.22s}.hero-support{color:#ffffffc7;max-width:540px;font-size:clamp(16px,1.3vw,20px);line-height:1.6}.hero-actions{flex-wrap:wrap;gap:16px;margin-top:34px;display:flex}.btn{letter-spacing:.16em;text-transform:uppercase;min-height:52px;transition:.45s var(--ease);border:1px solid #ffffff8c;justify-content:center;align-items:center;gap:28px;padding:0 22px;font-size:11px;display:inline-flex;position:relative;overflow:hidden}.btn:before{content:"";transition:.5s var(--ease);background:#fff;position:absolute;inset:0;transform:translateY(102%)}.btn span,.btn b{z-index:1;position:relative}.btn b{font-size:18px;font-weight:300}.btn:hover{color:var(--obsidian)}.btn:hover:before{transform:translateY(0)}.btn.ghost{border-color:#0000;padding-inline:4px}.btn.ghost:before{display:none}.btn.ghost:hover{color:#fff;opacity:.65}.hero-side{text-align:right;place-self:end;min-width:240px;padding-bottom:8px}.hero-index{letter-spacing:.18em;color:#fff9;margin-bottom:18px;font-size:11px}.hero-project{font-size:clamp(20px,2vw,32px);font-weight:600;line-height:1.05}.hero-location{letter-spacing:.16em;text-transform:uppercase;color:#ffffffa8;margin-top:10px;font-size:12px}.hero-meta-wrap{overflow:hidden}.hero-meta-inner{transition:.55s var(--ease)}.hero-meta-inner.swap{opacity:0;transform:translateY(18px)}.circle-badge{z-index:8;background:var(--ivory);width:168px;height:168px;color:var(--obsidian);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:-84px;right:clamp(18px,7vw,105px);box-shadow:0 20px 45px #0000001f}.circle-badge svg{width:144px;height:144px;animation:22s linear infinite spin;position:absolute;inset:12px}.circle-badge .arrow{font-size:28px;transform:rotate(45deg)}@keyframes spin{to{transform:rotate(360deg)}}section{position:relative}.pad{padding:clamp(92px,12vw,180px) clamp(20px,6vw,96px)}.intro{background:var(--ivory);padding-top:170px}.intro-grid{grid-template-columns:.7fr 1.55fr;gap:8vw;display:grid}.section-no{letter-spacing:.22em;text-transform:uppercase;color:var(--graphite);font-size:11px}.display-copy{letter-spacing:-.05em;margin:0;font-size:clamp(42px,6.4vw,100px);font-weight:500;line-height:.94}.display-copy em{font-family:Georgia,Times New Roman,serif;font-weight:400}.intro-copy{border-top:1px solid #0c0d0d26;grid-column:2;grid-template-columns:1fr 1fr;gap:40px;margin-top:60px;padding-top:30px;display:grid}.intro-copy p{color:var(--graphite);margin:0;font-size:15px;line-height:1.75}.reveal{opacity:0;transition:1s var(--ease);transform:translateY(48px)}.reveal.visible{opacity:1;transform:none}.experience{background:var(--white);overflow:hidden}.experience:before{content:"";background-image:linear-gradient(#0c0d0d0b 1px,#0000 1px),linear-gradient(90deg,#0c0d0d0b 1px,#0000 1px);background-size:80px 80px;position:absolute;inset:0}.exp-grid{grid-template-columns:1.3fr .7fr;align-items:end;gap:60px;display:grid;position:relative}.big-number{letter-spacing:-.085em;font-size:clamp(130px,23vw,360px);font-weight:700;line-height:.7}.big-number sup{vertical-align:top;letter-spacing:0;font-size:.24em;position:relative;top:.18em}.exp-copy{padding-bottom:16px}.exp-copy h3{margin:0 0 24px;font-size:clamp(27px,3vw,48px);font-weight:500;line-height:1.05}.exp-copy p{color:var(--graphite);max-width:420px;line-height:1.7}.expertise{background:var(--obsidian);color:var(--ivory)}.expertise-head{justify-content:space-between;align-items:end;margin-bottom:60px;display:flex}.expertise-head h2,.projects-head h2{letter-spacing:-.055em;margin:0;font-size:clamp(54px,8vw,126px);font-weight:600;line-height:.82}.expertise-list{border-top:1px solid #ffffff2e}.expertise-row{min-height:160px;transition:.5s var(--ease);border-bottom:1px solid #ffffff2e;grid-template-columns:90px 1fr 80px;align-items:center;display:grid;position:relative;overflow:hidden}.expertise-row:before{content:"";background:var(--ivory);transition:.65s var(--ease);position:absolute;inset:0;transform:translate(-101%)}.expertise-row>*{z-index:1;position:relative}.expertise-row:hover{color:var(--obsidian);padding-left:18px}.expertise-row:hover:before{transform:none}.expertise-row .num{letter-spacing:.18em;font-size:11px}.expertise-row h3{letter-spacing:-.035em;margin:0;font-size:clamp(34px,5vw,72px);font-weight:400}.expertise-row .arr{text-align:right;font-size:30px;font-weight:200;transition:all .4s}.expertise-row:hover .arr{transform:translate(8px)}.projects{background:var(--limestone)}.projects-head{justify-content:space-between;align-items:end;gap:40px;margin-bottom:70px;display:flex}.projects-head p{max-width:320px;color:var(--graphite);margin:0;line-height:1.7}.projects-grid{grid-template-columns:1.2fr .8fr;align-items:start;gap:clamp(22px,4vw,70px);display:grid}.project{margin-bottom:clamp(62px,9vw,130px)}.project:nth-child(2){margin-top:150px}.project:nth-child(4){margin-top:90px}.project-media{clip-path:inset(8% 0);transition:1.2s var(--ease);background:#ddd;position:relative;overflow:hidden}.project.visible .project-media{clip-path:inset(0)}.project-media img{aspect-ratio:16/11;object-fit:cover;transition:1.2s var(--ease);transform:scale(1.055)}.project:nth-child(2n) .project-media img{aspect-ratio:4/5}.project.visible .project-media img{transform:scale(1)}.project-media:hover img{transform:scale(1.035)}.project-caption{border-top:1px solid #0c0d0d29;grid-template-columns:70px 1fr auto;align-items:start;gap:14px;margin-top:16px;padding-top:17px;display:grid}.project-caption .pnum{letter-spacing:.18em;color:var(--graphite);font-size:10px}.project-caption h3{letter-spacing:-.02em;margin:0;font-size:clamp(22px,2.2vw,34px);font-weight:500}.project-caption p{letter-spacing:.14em;text-transform:uppercase;color:var(--graphite);margin:6px 0 0;font-size:11px}.project-caption .arrow{font-size:24px}.materials{background:var(--ivory);padding:0;overflow:hidden}.material-wrap{grid-template-columns:repeat(3,1fr);min-height:78vh;display:grid}.material{background-position:50%;background-size:cover;border-right:1px solid #ffffff40;align-items:flex-end;padding:42px;display:flex;position:relative;overflow:hidden}.material:before{content:"";background:var(--tone);opacity:.92;transition:.7s var(--ease);position:absolute;inset:0}.material:after{content:"";opacity:0;transition:.7s var(--ease);background:linear-gradient(#0000 40%,#0000008f);position:absolute;inset:0}.material:hover:before{opacity:.23}.material:hover:after{opacity:1}.material h3{z-index:2;letter-spacing:-.04em;color:var(--ink);margin:0;font-size:clamp(34px,4vw,66px);transition:all .45s;position:relative}.material:hover h3{color:#fff;transform:translateY(-10px)}.material span{z-index:2;letter-spacing:.16em;color:var(--ink);font-size:10px;position:absolute;top:30px;right:30px}.material:hover span{color:#fff}.marquee{background:var(--ivory);border-top:1px solid #0c0d0d14;border-bottom:1px solid #0c0d0d14;padding:45px 0;overflow:hidden}.marquee-track{width:max-content;animation:34s linear infinite marquee;display:flex}.marquee span{white-space:nowrap;letter-spacing:-.05em;color:#0000;-webkit-text-stroke:1px #0c0d0d5c;padding-right:3vw;font-size:clamp(74px,10vw,160px);font-weight:700;line-height:.8}@keyframes marquee{to{transform:translate(-50%)}}.philosophy{background:var(--obsidian);color:var(--ivory);overflow:hidden}.philo-grid{grid-template-columns:1fr 1fr;gap:8vw;display:grid}.philo-title{letter-spacing:-.055em;margin:0;font-size:clamp(60px,8vw,126px);line-height:.83}.values{border-top:1px solid #ffffff2e;align-self:end}.value{border-bottom:1px solid #ffffff2e;grid-template-columns:60px 1fr;align-items:center;min-height:92px;display:grid}.value span{letter-spacing:.16em;color:var(--stone);font-size:10px}.value strong{font-size:clamp(25px,3vw,42px);font-weight:400}.philo-copy{color:#ffffffad;grid-column:2;grid-template-columns:1fr 1fr;gap:34px;margin-top:55px;font-size:14px;line-height:1.7;display:grid}.philo-copy b{color:var(--ivory);letter-spacing:.14em;text-transform:uppercase;margin-bottom:12px;font-size:10px;display:block}.cta{color:#fff;background:linear-gradient(90deg,#080a0ab8,#080a0a2e),url(https://istromgroup.com.ng/wp-content/uploads/2020/10/wuye-1-1400x700.jpg) 50%/cover no-repeat;align-items:flex-end;min-height:82vh;display:flex}.cta-inner{width:100%;padding:clamp(72px,9vw,140px) clamp(20px,6vw,96px)}.cta h2{letter-spacing:-.07em;margin:0 0 42px;font-size:clamp(76px,12vw,188px);line-height:.75}.cta-bottom{justify-content:space-between;align-items:end;gap:40px;display:flex}.cta-bottom p{color:#ffffffc7;max-width:500px;font-size:18px;line-height:1.6}footer{background:var(--ivory);padding:80px clamp(20px,6vw,96px) 26px;position:relative;overflow:hidden}.footer-grid{grid-template-columns:1fr 1fr 1fr;gap:50px;padding-bottom:84px;display:grid}.footer-logo img{mix-blend-mode:multiply;filter:grayscale()contrast(1.15);width:180px}.footer-label{letter-spacing:.18em;text-transform:uppercase;color:var(--graphite);margin-bottom:18px;font-size:10px}.footer-list{flex-direction:column;gap:11px;font-size:14px;line-height:1.5;display:flex}.footer-services{font-size:clamp(18px,2vw,28px);line-height:1.55}.footer-bottom{letter-spacing:.12em;text-transform:uppercase;color:var(--graphite);border-top:1px solid #0c0d0d26;justify-content:space-between;padding-top:20px;font-size:11px;display:flex}.footer-giant{letter-spacing:-.075em;color:#0000;-webkit-text-stroke:1px #0c0d0d1f;white-space:nowrap;pointer-events:none;margin-left:-1vw;font-size:clamp(120px,23vw,360px);font-weight:700;line-height:.58}.mobile-panel{background:var(--obsidian);z-index:110;color:#fff;transition:.7s var(--ease);align-items:center;padding:100px 28px 40px;display:flex;position:fixed;inset:0;transform:translateY(-100%)}.mobile-panel.open{transform:none}.mobile-panel nav{flex-direction:column;gap:22px;display:flex}.mobile-panel a{letter-spacing:-.04em;font-size:clamp(38px,12vw,64px)}.cursor-dot,.cursor-ring{pointer-events:none;z-index:500;mix-blend-mode:difference;border-radius:50%;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.cursor-dot{background:#fff;width:6px;height:6px}.cursor-ring{border:1px solid #ffffffbf;width:38px;height:38px;transition:width .25s,height .25s}.cursor-ring.active{width:70px;height:70px}.float-icon{opacity:.12;pointer-events:none;animation:9s ease-in-out infinite float;position:absolute}.float-icon.one{width:90px;top:13%;right:7%}.float-icon.two{width:120px;animation-delay:-3s;bottom:8%;left:5%}@keyframes float{50%{transform:translateY(-16px)rotate(2deg)}}@media (width<=900px){:root{--header-h:74px}.nav{display:none}.menu-btn{display:block}.brand img{width:112px}.hero-content{grid-template-columns:1fr;align-items:end}.hero-side{text-align:left;justify-self:start;margin-top:40px}.hero-title{font-size:clamp(62px,17vw,118px)}.circle-badge{width:138px;height:138px;bottom:-69px}.circle-badge svg{width:118px;height:118px;inset:10px}.intro{padding-top:145px}.intro-grid,.exp-grid,.philo-grid{grid-template-columns:1fr}.intro-copy{grid-column:auto;grid-template-columns:1fr;margin-top:40px}.big-number{font-size:clamp(140px,44vw,300px)}.expertise-row{grid-template-columns:55px 1fr 38px;min-height:130px}.projects-head{display:block}.projects-head p{margin-top:24px}.projects-grid{grid-template-columns:1fr}.project:nth-child(2),.project:nth-child(4){margin-top:0}.project:nth-child(2n) .project-media img{aspect-ratio:16/11}.materials{padding:0}.material-wrap{grid-template-columns:1fr;min-height:auto}.material{border-bottom:1px solid #ffffff40;border-right:0;min-height:42vh}.philo-copy{grid-column:auto;grid-template-columns:1fr}.cta-bottom{display:block}.cta-bottom .btn{margin-top:28px}.footer-grid{grid-template-columns:1fr;gap:34px}}@media (width<=600px){.pad{padding:92px 20px}.hero-content{padding:120px 20px 46px}.hero-title{font-size:clamp(58px,18.8vw,86px)}.hero-support{font-size:15px}.hero-actions{gap:8px}.btn{gap:18px;padding:0 15px}.circle-badge{right:18px}.display-copy{font-size:clamp(43px,13vw,64px)}.expertise-head{display:block}.expertise-head .section-no{margin-bottom:18px}.project-caption{grid-template-columns:44px 1fr auto}.cta h2{font-size:clamp(70px,22vw,112px)}.footer-bottom{flex-direction:column;gap:10px}}@media (pointer:coarse){.cursor-dot,.cursor-ring{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body.modal-open{overflow:hidden}.client-portal-btn{background:var(--stone);letter-spacing:.12em;transition:.45s var(--ease);border:1px solid #ffffff47;border-radius:999px;align-items:center;gap:10px;font-weight:700;display:inline-flex;box-shadow:0 8px 30px #0000001f;color:var(--obsidian)!important;padding:13px 16px!important}.client-portal-btn:after{display:none!important}.client-portal-btn svg{stroke:currentColor;fill:none;stroke-width:1.7px;width:16px;height:16px}.client-portal-btn:hover{background:var(--sand);transform:translateY(-2px)}.site-header.scrolled .client-portal-btn{border-color:#0c0d0d14}.mobile-client{text-transform:uppercase;border:1px solid #ffffff4d;align-items:center;gap:12px;width:max-content;margin-top:18px;padding:16px 18px;letter-spacing:.12em!important;font-size:16px!important;display:inline-flex!important}.mobile-client svg{fill:none;stroke:currentColor;stroke-width:1.7px;width:18px;height:18px}.project{cursor:pointer;position:relative}.project:focus-visible{outline:2px solid var(--stone);outline-offset:8px}.project .project-detail-cue{z-index:5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);letter-spacing:.14em;text-transform:uppercase;opacity:0;transition:.45s var(--ease);background:#f4f1ebeb;border-radius:999px;align-items:center;gap:8px;padding:10px 12px;font-size:9px;display:flex;position:absolute;top:18px;right:18px;transform:translateY(8px)}.project:hover .project-detail-cue,.project:focus-within .project-detail-cue{opacity:1;transform:none}.project-detail-cue svg{fill:none;stroke:currentColor;stroke-width:1.7px;width:14px;height:14px}.project-modal,.client-modal{z-index:700;visibility:hidden;opacity:0;transition:opacity .45s var(--ease),visibility .45s;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0c0d0db8;position:fixed;inset:0}.project-modal.open,.client-modal.open{visibility:visible;opacity:1}.project-dialog{background:var(--ivory);width:min(1120px,94vw);height:100%;transition:transform .65s var(--ease);overscroll-behavior:contain;position:absolute;top:0;right:0;overflow:auto;transform:translate(100%)}.project-modal.open .project-dialog{transform:none}.modal-close{float:right;z-index:12;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;width:48px;height:48px;transition:.35s var(--ease);background:#f4f1ebe6;border:1px solid #0c0d0d29;border-radius:50%;place-items:center;margin:18px 18px 0 0;display:grid;position:sticky;top:18px}.modal-close:hover{background:#fff;transform:rotate(90deg)}.modal-close svg{stroke:currentColor;fill:none;stroke-width:1.5px;width:18px;height:18px}.project-hero{background:#ddd;height:min(58vh,620px);min-height:390px;position:relative;overflow:hidden}.project-hero img{object-fit:cover;width:100%;height:100%}.project-hero:after{content:"";background:linear-gradient(#0000 40%,#080909ad);position:absolute;inset:0}.project-hero-copy{z-index:2;color:#fff;position:absolute;bottom:clamp(24px,5vw,56px);left:clamp(22px,5vw,70px);right:clamp(22px,5vw,70px)}.project-kicker{letter-spacing:.22em;text-transform:uppercase;color:#ffffffb8;margin-bottom:12px;font-size:10px}.project-hero-copy h2{letter-spacing:-.055em;margin:0 0 14px;font-size:clamp(48px,7vw,100px);font-weight:600;line-height:.86}.project-hero-copy p{letter-spacing:.16em;text-transform:uppercase;color:#fffc;margin:0;font-size:12px}.project-body{padding:clamp(44px,6vw,86px)}.project-tabs{z-index:8;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f4f1ebf0;border-bottom:1px solid #0c0d0d1a;gap:6px;margin:-1px 0 48px;padding:12px 0;display:flex;position:sticky;top:0;overflow:auto}.project-tabs a{letter-spacing:.14em;text-transform:uppercase;border-radius:999px;flex:none;padding:10px 12px;font-size:10px;transition:all .3s}.project-tabs a:hover{background:var(--limestone)}.modal-section{border-bottom:1px solid #0c0d0d1f;margin-bottom:58px;padding:0 0 58px;scroll-margin-top:76px}.modal-section:last-child{border-bottom:0;margin-bottom:0}.modal-label{letter-spacing:.2em;text-transform:uppercase;color:var(--graphite);margin-bottom:18px;font-size:10px}.modal-overview-grid{grid-template-columns:1.25fr .75fr;gap:clamp(28px,6vw,80px);display:grid}.modal-overview-grid>p{letter-spacing:-.02em;color:var(--charcoal);margin:0;font-size:clamp(20px,2.3vw,32px);line-height:1.45}.facts{border-top:1px solid #0c0d0d24;grid-template-columns:1fr 1fr;display:grid}.fact{border-bottom:1px solid #0c0d0d24;padding:18px 12px 18px 0}.fact small{letter-spacing:.15em;text-transform:uppercase;color:var(--graphite);margin-bottom:7px;font-size:9px;display:block}.fact strong{font-size:15px;font-weight:600;line-height:1.4}.amenity-grid,.plan-grid,.nearby-grid{background:#0c0d0d1f;border:1px solid #0c0d0d1f;grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.amenity,.plan,.nearby{background:var(--ivory);align-items:center;gap:14px;min-height:88px;padding:22px;display:flex}.amenity svg,.plan svg,.nearby svg{width:22px;height:22px;stroke:var(--stone);fill:none;stroke-width:1.5px;flex:none}.amenity span,.plan span,.nearby span{font-size:13px;line-height:1.35}.gallery-strip{grid-template-columns:1fr 1fr;gap:16px;display:grid}.gallery-card{background:var(--charcoal);color:#fff;flex-direction:column;justify-content:flex-end;min-height:160px;padding:24px;display:flex;position:relative;overflow:hidden}.gallery-card:before{content:"";border:1px solid #ffffff21;border-radius:50%;width:180px;height:180px;position:absolute;top:-70px;right:-70px}.gallery-card small{letter-spacing:.16em;text-transform:uppercase;color:#fff9;font-size:9px}.gallery-card strong{margin-top:8px;font-size:22px;font-weight:500}.location-grid{grid-template-columns:1fr .9fr;gap:36px;display:grid}.address-card{background:var(--white);border:1px solid #0c0d0d1a;padding:28px}.address-card h3{letter-spacing:-.03em;margin:0 0 20px;font-size:clamp(26px,3vw,42px)}.address-card p{color:var(--graphite);margin:0 0 26px;line-height:1.7}.map-link{letter-spacing:.14em;text-transform:uppercase;border:1px solid #0c0d0d38;align-items:center;gap:12px;padding:13px 16px;font-size:10px;display:inline-flex}.project-enquiry{background:var(--obsidian);color:var(--ivory);justify-content:space-between;align-items:center;gap:40px;padding:clamp(28px,4vw,50px);display:flex}.project-enquiry h3{letter-spacing:-.04em;margin:0 0 10px;font-size:clamp(30px,4vw,54px);line-height:1}.project-enquiry p{color:#ffffffa6;max-width:520px;margin:0;line-height:1.6}.project-enquiry .btn{flex:none}.original-link{letter-spacing:.14em;text-transform:uppercase;color:var(--graphite);border-bottom:1px solid;margin-top:16px;padding-bottom:4px;font-size:10px;display:inline-flex}.client-dialog{background:var(--ivory);opacity:0;width:min(940px,92vw);max-height:90vh;transition:.55s var(--ease);position:absolute;inset:50% auto auto 50%;overflow:auto;transform:translate(-50%,-46%)scale(.98);box-shadow:0 40px 120px #00000059}.client-modal.open .client-dialog{opacity:1;transform:translate(-50%,-50%)scale(1)}.client-grid{grid-template-columns:1fr 1fr;min-height:560px;display:grid}.client-brand{background:var(--obsidian);color:var(--ivory);padding:clamp(34px,5vw,60px);position:relative;overflow:hidden}.client-brand:after{content:"MY ISTROM";letter-spacing:-.07em;color:#0000;-webkit-text-stroke:1px #ffffff1a;white-space:nowrap;font-size:clamp(70px,10vw,140px);font-weight:700;position:absolute;bottom:-20px;left:-10px}.client-brand .portal-mark{border:1px solid #ffffff40;border-radius:50%;place-items:center;width:54px;height:54px;margin-bottom:65px;display:grid}.client-brand .portal-mark svg{width:24px;height:24px;stroke:var(--stone);fill:none;stroke-width:1.5px}.client-brand h2{letter-spacing:-.05em;margin:0 0 20px;font-size:clamp(44px,5vw,72px);line-height:.92}.client-brand p{color:#ffffffa8;max-width:360px;line-height:1.65}.portal-features{z-index:2;gap:13px;margin-top:38px;display:grid;position:relative}.portal-features span{letter-spacing:.08em;text-transform:uppercase;color:#ffffffbf;align-items:center;gap:10px;font-size:11px;display:flex}.portal-features i{background:var(--stone);border-radius:50%;width:5px;height:5px}.client-login{flex-direction:column;justify-content:center;padding:clamp(38px,5vw,62px);display:flex}.client-login .modal-label{margin-bottom:10px}.client-login h3{letter-spacing:-.035em;margin:0 0 10px;font-size:36px}.client-login>p{color:var(--graphite);margin:0 0 30px;font-size:14px;line-height:1.6}.field{gap:8px;margin-bottom:16px;display:grid}.field label{letter-spacing:.15em;text-transform:uppercase;color:var(--graphite);font-size:9px}.field input,.field textarea,.field select{width:100%;color:var(--obsidian);font:inherit;background:#fff;border:1px solid #0c0d0d2e;outline:none;padding:15px 14px;transition:all .3s}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--stone);box-shadow:0 0 0 3px #b4a0841f}.portal-submit{background:var(--obsidian);color:#fff;text-transform:uppercase;letter-spacing:.16em;cursor:pointer;border:0;min-height:54px;margin-top:5px;padding:0 18px;font-size:10px}.portal-note{color:var(--graphite);margin-top:16px;font-size:11px;line-height:1.6}.portal-status{background:var(--limestone);margin-top:14px;padding:12px 14px;font-size:12px;line-height:1.5;display:none}.portal-status.show{display:block}.footer-grid{grid-template-columns:.8fr 1fr 1fr 1.25fr}.footer-contact-form{grid-template-columns:1fr 1fr;gap:11px;display:grid}.footer-contact-form .full{grid-column:1/-1}.footer-contact-form input,.footer-contact-form select,.footer-contact-form textarea{width:100%;font:inherit;background:0 0;border:0;border-bottom:1px solid #0c0d0d38;border-radius:0;outline:none;padding:12px 2px;font-size:12px}.footer-contact-form textarea{resize:vertical;min-height:70px}.footer-contact-form input:focus,.footer-contact-form select:focus,.footer-contact-form textarea:focus{border-color:var(--stone)}.footer-form-btn{background:var(--obsidian);color:#fff;text-transform:uppercase;letter-spacing:.16em;cursor:pointer;min-height:46px;transition:.35s var(--ease);border:0;grid-column:1/-1;padding:0 16px;font-size:9px}.footer-form-btn:hover{background:var(--stone);color:var(--obsidian)}.form-status{color:var(--graphite);grid-column:1/-1;min-height:1.5em;font-size:11px;line-height:1.5}.social-links{gap:9px;margin-top:22px;display:flex}.social-link{width:40px;height:40px;transition:.35s var(--ease);border:1px solid #0c0d0d26;border-radius:50%;place-items:center;display:grid}.social-link:hover{background:var(--obsidian);color:#fff;transform:translateY(-2px)}.social-link svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px}.social-link.x svg{fill:currentColor;stroke:none;width:14px;height:14px}@media (width<=1100px){.nav{gap:20px}.client-portal-btn{padding:12px 13px!important}.footer-grid{grid-template-columns:1fr 1fr}.footer-logo{grid-column:1/-1}}@media (width<=900px){.project-dialog{width:100vw}.modal-overview-grid,.location-grid{grid-template-columns:1fr}.amenity-grid,.plan-grid,.nearby-grid{grid-template-columns:1fr 1fr}.client-grid{grid-template-columns:1fr}.client-brand{min-height:300px}.client-brand .portal-mark{margin-bottom:35px}.client-dialog{width:min(680px,94vw)}.footer-grid{grid-template-columns:1fr}.footer-logo{grid-column:auto}}@media (width<=600px){.project-hero{height:48vh;min-height:340px}.project-body{padding:34px 20px}.project-tabs{margin-bottom:34px}.amenity-grid,.plan-grid,.nearby-grid,.gallery-strip,.facts{grid-template-columns:1fr}.project-enquiry{flex-direction:column;align-items:flex-start}.modal-close{margin:10px 10px 0 0;top:10px}.client-dialog{width:100vw;height:100%;max-height:100vh}.client-grid{min-height:100%}.client-login{padding:36px 22px}.client-brand{padding:70px 22px 36px}.footer-contact-form{grid-template-columns:1fr}.footer-contact-form .full,.footer-form-btn{grid-column:auto}.project .project-detail-cue{opacity:1;padding:8px 10px;top:12px;right:12px;transform:none}}.brand{width:190px;min-width:190px;overflow:visible}.brand img{filter:invert();width:190px;height:auto;display:block;mix-blend-mode:normal!important}.site-header.scrolled .brand img{filter:none;mix-blend-mode:normal!important}.footer-logo img{width:220px;height:auto;filter:none!important;mix-blend-mode:normal!important}.weather-wrap{z-index:14;background:linear-gradient(180deg,#111 0%,var(--ivory) 100%);margin-top:-1px;padding:0 clamp(20px,6vw,96px) clamp(56px,7vw,100px);position:relative}.weather-card{color:#fff;background:radial-gradient(circle at 10% 5%,#d1c1a947,#0000 34%),linear-gradient(120deg,#0b0d0e 0%,#1d2021 56%,#725f4b 140%);border:1px solid #ffffff24;grid-template-columns:minmax(310px,.72fr) 1.5fr;max-width:1500px;margin:0 auto;display:grid;overflow:hidden;box-shadow:0 24px 70px #00000038}.weather-current{border-right:1px solid #ffffff1f;padding:28px 30px}.weather-meta{letter-spacing:.14em;text-transform:uppercase;color:#ffffff8f;justify-content:space-between;gap:15px;font-size:9px;display:flex}.weather-live{align-items:center;gap:8px;display:inline-flex}.weather-live i{background:#67d88a;border-radius:50%;width:7px;height:7px;animation:2.2s ease-in-out infinite weatherPulse;box-shadow:0 0 0 5px #67d88a1f}@keyframes weatherPulse{50%{box-shadow:0 0 0 9px #67d88a00}}.weather-now{align-items:center;gap:18px;margin-top:22px;display:flex}.weather-symbol{place-items:center;width:62px;height:62px;display:grid}.weather-symbol svg{width:58px;height:58px;stroke:var(--sand);fill:none;stroke-width:1.4px}.weather-temp{letter-spacing:-.06em;font-size:clamp(50px,5.5vw,82px);font-weight:600;line-height:.85}.weather-now h2{letter-spacing:.06em;margin:10px 0 4px;font-size:14px;font-weight:500}.weather-now p{color:#ffffff9e;margin:0;font-size:12px}.weather-stats{border-top:1px solid #ffffff1c;gap:30px;margin-top:24px;padding-top:18px;display:flex}.weather-stats span{gap:4px;display:grid}.weather-stats small{letter-spacing:.14em;text-transform:uppercase;color:#ffffff70;font-size:8px}.weather-stats strong{font-size:13px;font-weight:500}.weather-forecast{grid-template-columns:repeat(5,1fr);min-width:0;display:grid}.forecast-day{min-width:0;transition:.45s var(--ease);border-right:1px solid #ffffff1a;flex-direction:column;justify-content:space-between;gap:18px;padding:28px 18px;display:flex;position:relative;overflow:hidden}.forecast-day:last-child{border-right:0}.forecast-day:hover{background:#ffffff12;transform:translateY(-2px)}.forecast-day:after{content:"";background:radial-gradient(circle,#d1c1a929,#0000 70%);border-radius:50%;width:110px;height:110px;position:absolute;inset:auto -20px -45px auto}.forecast-day .day{letter-spacing:.14em;text-transform:uppercase;color:#ffffffb3;font-size:10px}.forecast-day svg{width:34px;height:34px;stroke:var(--sand);fill:none;stroke-width:1.35px}.forecast-day .temps{font-size:17px}.forecast-day .temps span{color:#ffffff75;margin-left:4px;font-size:13px}.forecast-day .condition{color:#ffffff8c;font-size:10px;line-height:1.35}.weather-loading{letter-spacing:.12em;text-transform:uppercase;color:#ffffff94;grid-column:1/-1;place-items:center;min-height:160px;font-size:11px;display:grid}.project-hero-shimmer{z-index:1;pointer-events:none;background:linear-gradient(115deg,#0000 15%,#d1c1a92e 49%,#0000 70%);animation:7s ease-in-out infinite heroSheen;position:absolute;inset:0;transform:translate(-100%)}@keyframes heroSheen{0%,60%{transform:translate(-120%)}85%,to{transform:translate(120%)}}.section-note{max-width:760px;color:var(--graphite);margin:-6px 0 24px;font-size:13px;line-height:1.65}.amenity{min-height:105px;transition:.4s var(--ease);align-items:flex-start}.amenity:hover{background:#fff;transform:translateY(-2px)}.amenity-icon{background:linear-gradient(145deg,#b4a08442,#f4f1eba6);border:1px solid #b4a0844d;border-radius:14px;flex:none;place-items:center;width:42px;height:42px;display:grid}.amenity-icon svg{width:21px;height:21px;stroke:var(--charcoal);fill:none;stroke-width:1.45px}.plan-image-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.plan-card{text-align:left;cursor:zoom-in;transition:.45s var(--ease);background:#fff;border:1px solid #0c0d0d1f;min-height:260px;padding:0;position:relative;overflow:hidden}.plan-card:hover{transform:translateY(-5px);box-shadow:0 22px 44px #0c0d0d1a}.plan-card .plan-image{background:#fff;place-items:center;height:220px;display:grid;position:relative;overflow:hidden}.plan-card .plan-image img{object-fit:contain;width:100%;height:100%;transition:.6s var(--ease);padding:12px}.plan-card:hover .plan-image img{transform:scale(1.04)}.plan-card footer{background:var(--obsidian);color:#fff;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.plan-card footer strong{font-size:12px;font-weight:500}.plan-card footer span{letter-spacing:.13em;text-transform:uppercase;color:#ffffff8c;font-size:9px}.plan-card.unavailable{cursor:default;background:linear-gradient(135deg,#f5f1e9,#e8dfd1)}.plan-blueprint{background-image:linear-gradient(#0c0d0d0d 1px,#0000 1px),linear-gradient(90deg,#0c0d0d0d 1px,#0000 1px);background-size:22px 22px;place-items:center;height:220px;display:grid}.plan-blueprint svg{width:84px;height:84px;stroke:var(--stone);fill:none;stroke-width:1px}.plan-blueprint small{color:var(--graphite);line-height:1.4;position:absolute;bottom:14px;left:14px;right:14px}.gallery-heading{justify-content:space-between;align-items:flex-start;gap:30px;display:flex}.gallery-counter{letter-spacing:.16em;white-space:nowrap;color:var(--graphite);font-size:11px}.gallery-slider{position:relative}.gallery-stage{background:var(--obsidian);height:min(62vh,640px);min-height:360px;position:relative;overflow:hidden}.gallery-stage img{object-fit:cover;width:100%;height:100%;transition:opacity .45s var(--ease),transform .8s var(--ease)}.gallery-stage.changing img{opacity:.18;transform:scale(1.03)}.gallery-gradient{pointer-events:none;background:linear-gradient(#0000 62%,#0c0d0d7a);position:absolute;inset:0}.gallery-nav{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;width:52px;height:52px;transition:.35s var(--ease);background:#0c0d0d57;border:1px solid #ffffff6b;border-radius:50%;font-size:21px;position:absolute;top:50%;transform:translateY(-50%)}.gallery-nav:hover{color:var(--obsidian);background:#fff}.gallery-prev{left:18px}.gallery-next{right:18px}.gallery-expand{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;cursor:pointer;background:#0c0d0d73;border:1px solid #ffffff5c;align-items:center;gap:9px;padding:11px 14px;display:flex;position:absolute;bottom:18px;right:18px}.gallery-expand svg{stroke:currentColor;fill:none;stroke-width:1.5px;width:17px;height:17px}.gallery-expand span{letter-spacing:.14em;text-transform:uppercase;font-size:9px}.gallery-thumbs{scrollbar-width:thin;gap:8px;padding:12px 0 4px;display:flex;overflow-x:auto}.gallery-thumb{cursor:pointer;opacity:.55;background:#ddd;border:1px solid #0000;flex:0 0 92px;height:66px;padding:0;transition:all .3s;overflow:hidden}.gallery-thumb img{object-fit:cover;width:100%;height:100%}.gallery-thumb.active{opacity:1;border-color:var(--stone);transform:translateY(-2px)}.location-map{background:#fff;border:1px solid #0c0d0d1f;overflow:hidden}.location-map iframe{filter:saturate(.65)contrast(.95);width:100%;height:390px;transition:.5s var(--ease);border:0;display:block}.location-map:hover iframe{filter:none}.map-caption{background:linear-gradient(120deg,#fff,#f2ede5);justify-content:space-between;align-items:center;gap:30px;padding:24px 26px;display:flex}.map-caption>div:first-child{gap:5px;display:grid}.map-caption small{letter-spacing:.16em;color:var(--graphite);font-size:8px}.map-caption strong{font-size:22px}.map-caption span{color:var(--graphite);font-size:13px;line-height:1.45}.map-pin{background:var(--obsidian);color:#fff;border-radius:50%;flex:none;place-items:center;width:48px;height:48px;display:grid}.map-pin svg{width:21px;height:21px;stroke:var(--sand);fill:none;stroke-width:1.4px}.nearby-block{margin-top:32px}.share-section{background:linear-gradient(115deg,#d1c1a940,#ffffffd1);justify-content:space-between;align-items:center;gap:44px;display:flex;padding:34px!important}.share-section h3{letter-spacing:-.035em;margin:0;font-size:clamp(24px,3vw,38px);line-height:1.05}.share-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.share-btn{cursor:pointer;min-width:48px;height:48px;color:var(--obsidian);transition:.35s var(--ease);background:#ffffffb8;border:1px solid #0c0d0d24;justify-content:center;align-items:center;gap:8px;padding:0 13px;display:inline-flex}.share-btn svg{stroke:currentColor;fill:none;stroke-width:1.5px;width:17px;height:17px}.share-btn span{letter-spacing:.12em;text-transform:uppercase;font-size:9px}.share-btn:hover{background:var(--obsidian);color:#fff;transform:translateY(-2px)}.share-status{color:var(--graphite);min-height:16px;margin-top:8px;font-size:11px}.media-lightbox{z-index:900;visibility:hidden;opacity:0;background:#050606f2;place-items:center;transition:all .35s;display:grid;position:fixed;inset:0}.media-lightbox.open{visibility:visible;opacity:1}.lightbox-canvas{touch-action:none;place-items:center;width:100%;height:100%;display:grid;overflow:hidden}.lightbox-canvas img{object-fit:contain;transform-origin:50%;max-width:92vw;max-height:88vh;transition:transform .25s}.lightbox-close{z-index:3;color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff40;border-radius:50%;width:48px;height:48px;font-size:28px;position:absolute;top:20px;right:22px}.lightbox-tools{z-index:3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#141414b3;border:1px solid #ffffff24;display:flex;position:absolute;bottom:28px;left:50%;transform:translate(-50%)}.lightbox-tools button{color:#fff;cursor:pointer;background:0 0;border:0;border-right:1px solid #ffffff1f;min-width:50px;height:44px}.lightbox-tools button:last-child{border-right:0}.lightbox-caption{color:#ffffffb8;letter-spacing:.12em;text-transform:uppercase;font-size:11px;position:absolute;bottom:28px;left:24px}.visitor-dock{z-index:650;gap:10px;display:grid;position:fixed;bottom:18px;left:18px}.dock-buttons{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f4f1ebe3;border:1px solid #0c0d0d1a;border-radius:999px;align-items:center;gap:8px;padding:7px;display:flex;box-shadow:0 16px 45px #0000002e}.dock-btn{width:42px;height:42px;color:var(--obsidian);cursor:pointer;transition:.3s var(--ease);background:0 0;border:0;border-radius:50%;place-items:center;display:grid;position:relative}.dock-btn:hover,.dock-btn.active{background:var(--obsidian);color:#fff}.dock-btn svg{fill:none;stroke:currentColor;stroke-width:1.45px;width:19px;height:19px}.dock-tip{white-space:nowrap;background:var(--obsidian);color:#fff;letter-spacing:.1em;text-transform:uppercase;opacity:0;visibility:hidden;pointer-events:none;padding:7px 9px;font-size:8px;transition:all .25s;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%,6px)}.dock-btn:hover .dock-tip{opacity:1;visibility:visible;transform:translate(-50%)}.whatsapp-dock{box-shadow:0 8px 22px #25d3664d;color:#fff!important;background:#25d366!important}.whatsapp-dock svg{stroke-width:1.55px;width:23px;height:23px}.dock-popover{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);width:min(350px,100vw - 36px);max-height:min(66vh,520px);animation:popoverIn .35s var(--ease);background:#f4f1ebf7;border:1px solid #0c0d0d1c;padding:20px;overflow:auto;box-shadow:0 20px 60px #0003}@keyframes popoverIn{0%{opacity:0;transform:translateY(10px)scale(.98)}}.dock-title{letter-spacing:-.02em;margin-bottom:8px;font-size:17px;font-weight:650}.dock-popover>p{color:var(--graphite);margin:0 0 15px;font-size:11px;line-height:1.55}.language-list{display:grid}.language-list button{text-align:left;cursor:pointer;background:0 0;border:0;border-top:1px solid #0c0d0d17;justify-content:space-between;padding:12px 3px;display:flex}.language-list button.active{color:#7c654e;font-weight:700}.language-list span{letter-spacing:.12em;color:var(--graphite);font-size:9px}.accessibility-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.accessibility-actions button{cursor:pointer;background:#fff;border:1px solid #0c0d0d1a;place-items:center;gap:5px;min-height:78px;padding:10px;display:grid}.accessibility-actions button.active{background:var(--obsidian);color:#fff}.accessibility-actions svg{fill:none;stroke:currentColor;stroke-width:1.5px;width:22px;height:22px}.accessibility-actions span{letter-spacing:.08em;text-transform:uppercase;font-size:9px}.consent-row{border-top:1px solid #0c0d0d17;justify-content:space-between;align-items:center;gap:14px;padding:13px 0;display:flex}.consent-row span{gap:3px;display:grid}.consent-row strong{font-size:12px}.consent-row small{color:var(--graphite);font-size:10px}.consent-row input{width:19px;height:19px;accent-color:var(--stone)}.consent-save{background:var(--obsidian);color:#fff;letter-spacing:.13em;text-transform:uppercase;cursor:pointer;border:0;width:100%;margin-top:10px;padding:13px;font-size:9px}.consent-status{color:var(--graphite);min-height:14px;margin-top:8px;font-size:10px}body.a11y-text-large{font-size:118%}body.a11y-text-large p,body.a11y-text-large a,body.a11y-text-large button,body.a11y-text-large input,body.a11y-text-large select,body.a11y-text-large textarea{font-size:max(1em,14px)}html.a11y-contrast{filter:contrast(1.22)}html.a11y-gray{filter:grayscale()}html.a11y-contrast.a11y-gray{filter:grayscale()contrast(1.22)}html.user-reduce-motion *,html.user-reduce-motion :before,html.user-reduce-motion :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}@media (width<=1050px){.brand{width:162px;min-width:162px}.brand img{width:162px}.weather-card{grid-template-columns:1fr}.weather-current{border-bottom:1px solid #ffffff1f;border-right:0}.plan-image-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.brand{width:146px;min-width:146px}.brand img{width:146px}.weather-wrap{padding-inline:16px;padding-bottom:55px}.weather-current{padding:22px 20px}.weather-forecast{scroll-snap-type:x mandatory;display:flex;overflow-x:auto}.forecast-day{scroll-snap-align:start;flex:0 0 44%;min-height:190px}.plan-image-grid{grid-template-columns:1fr}.plan-card{min-height:230px}.plan-card .plan-image,.plan-blueprint{height:210px}.gallery-stage{height:52vh;min-height:330px}.gallery-nav{width:44px;height:44px}.gallery-prev{left:10px}.gallery-next{right:10px}.gallery-heading{gap:12px}.gallery-expand{bottom:10px;right:10px}.location-map iframe{height:330px}.map-caption{align-items:flex-start;padding:18px}.map-caption strong{font-size:18px}.share-section{display:block}.share-actions{justify-content:flex-start;margin-top:20px}.share-btn span{display:none}.share-btn{width:46px;padding:0}.visitor-dock{bottom:10px;left:10px}.dock-buttons{gap:4px;padding:5px}.dock-btn{width:40px;height:40px}.dock-tip{display:none}.project-dialog{width:100vw}.project-body{padding-inline:18px}}@media (width<=480px){.weather-meta{display:grid}.weather-now{align-items:flex-start}.weather-symbol{width:48px;height:48px}.weather-symbol svg{width:44px;height:44px}.forecast-day{flex-basis:54%}.gallery-stage{height:44vh;min-height:290px}.gallery-thumb{flex-basis:80px;height:58px}.lightbox-caption{display:none}.lightbox-tools{bottom:16px}.lightbox-close{top:12px;right:12px}}.hp{opacity:0;width:1px;height:1px;position:absolute!important;left:-9999px!important}.nav a[aria-current=page]:after{transform:scaleX(1)}.page-hero{background:var(--obsidian);color:var(--ivory);padding:calc(var(--header-h) + clamp(56px,9vw,120px)) clamp(20px,6vw,96px) clamp(48px,7vw,96px);position:relative;overflow:hidden}.page-hero.has-image{align-items:flex-end;min-height:min(78vh,720px);display:flex}.page-hero-media{position:absolute;inset:0}.page-hero-media img{object-fit:cover;opacity:.5;height:100%}.page-hero-media:after{content:"";background:linear-gradient(#0c0d0d8c,#0c0d0d33 40%,#0c0d0dd9);position:absolute;inset:0}.page-hero-inner{max-width:1100px;position:relative}.page-title{letter-spacing:-.05em;margin:18px 0 0;font-size:clamp(44px,7vw,112px);font-weight:500;line-height:.92}.page-sub{max-width:640px;color:var(--sand);margin:26px 0 0;font-size:clamp(16px,1.5vw,19px);line-height:1.6}.crumbs{letter-spacing:.12em;text-transform:uppercase;color:var(--sand);flex-wrap:wrap;gap:10px;margin-bottom:22px;font-size:12px;display:flex}.crumbs a:hover{color:#fff}.page-hero .hero-actions{flex-wrap:wrap;gap:18px;margin-top:36px;display:flex}.page-body{padding:clamp(56px,8vw,120px) clamp(20px,6vw,96px)}.page-body.narrow{max-width:860px;margin:0 auto}.lead{color:var(--charcoal);max-width:760px;font-size:clamp(18px,1.8vw,22px);line-height:1.55}.muted{color:var(--graphite)}.section-title{letter-spacing:-.03em;margin:clamp(48px,6vw,80px) 0 22px;font-size:clamp(26px,3vw,40px);font-weight:500}.page-body>.section-title:first-child,.dev-main>.section-title:first-child,.two-col .section-title:first-child,.apply-box .section-title:first-child{margin-top:0}.prose{color:var(--charcoal);max-width:760px;font-size:17px;line-height:1.75}.prose h2,.prose h3{color:var(--obsidian);letter-spacing:-.02em;margin:1.8em 0 .5em;font-weight:600}.prose a,.text-link{border-bottom:1px solid var(--stone)}.prose ul,.prose ol{padding-left:1.2em}.text-link{letter-spacing:.08em;text-transform:uppercase;font-size:13px}.dev-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.4vw,34px);display:grid}.dev-grid.small{grid-template-columns:repeat(3,minmax(0,1fr))}.dev-card{display:block}.dev-media{aspect-ratio:4/3;background:var(--limestone);overflow:hidden}.dev-media img{object-fit:cover;height:100%;transition:transform 1.2s var(--ease)}.dev-card:hover .dev-media img{transform:scale(1.05)}.dev-caption{border-bottom:1px solid #0c0d0d1f;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 0 4px;display:flex}.dev-caption h3{letter-spacing:-.02em;margin:0;font-size:22px;font-weight:500}.dev-caption p{color:var(--graphite);margin:6px 0 0;font-size:14px}.dev-tag{letter-spacing:.14em;text-transform:uppercase;color:var(--graphite);white-space:nowrap;padding-top:6px;font-size:11px}.dev-layout{grid-template-columns:minmax(0,1fr) 400px;align-items:start;gap:clamp(32px,5vw,80px);display:grid}.dev-aside{top:calc(var(--header-h) + 24px);flex-direction:column;gap:22px;display:flex;position:sticky}.dev-facts{border-top:1px solid #0c0d0d1f;gap:0;margin:0;display:grid}.dev-facts>div{border-bottom:1px solid #0c0d0d1f;justify-content:space-between;gap:18px;padding:14px 0;display:flex}.dev-facts dt{color:var(--graphite);letter-spacing:.06em;text-transform:uppercase;font-size:13px}.dev-facts dd{text-align:right;margin:0;font-weight:500}.amenities{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 28px;margin:0;padding:0;list-style:none;display:grid}.amenities li{border-bottom:1px solid #0c0d0d1a;align-items:center;gap:12px;padding:12px 0;display:flex}.amenities li:before{content:"";background:var(--stone);border-radius:50%;flex-shrink:0;width:8px;height:8px}.dev-plans{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.dev-plan{background:#fff;border:1px solid #0c0d0d14;padding:12px;display:block}.dev-plan img{aspect-ratio:1;object-fit:contain}.dev-plan span{color:var(--graphite);margin-top:10px;font-size:13px;display:block}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.gallery-grid a{aspect-ratio:4/3;background:var(--limestone);display:block;overflow:hidden}.gallery-grid img{object-fit:cover;height:100%;transition:transform .9s var(--ease)}.gallery-grid a:hover img{transform:scale(1.06)}.dev-nearby{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:22px 0 0;display:grid}.dev-nearby div{background:var(--limestone);padding:16px}.dev-nearby dt{color:var(--graphite);font-size:13px}.dev-nearby dd{margin:6px 0 0;font-size:20px;font-weight:500}.enquire-box,.apply-box{background:var(--obsidian);color:var(--ivory);padding:clamp(22px,3vw,36px)}.apply-box{margin-top:clamp(48px,6vw,80px)}.two-col .apply-box{margin-top:0}.enquire-box h2,.apply-box h2{letter-spacing:-.02em;color:var(--ivory);margin:0 0 8px;font-size:24px;font-weight:500}.enquire-box>p,.apply-box>p{color:var(--sand);margin:0 0 20px;font-size:14px;line-height:1.6}.site-form{grid-template-columns:1fr 1fr;gap:12px;display:grid}.enquire-box .site-form{grid-template-columns:1fr}.site-form .full,.site-form textarea,.site-form .btn,.site-form .form-status{grid-column:1/-1}.site-form label{letter-spacing:.08em;text-transform:uppercase;color:var(--sand);flex-direction:column;gap:7px;font-size:12px;display:flex}.site-form input,.site-form select,.site-form textarea{font:inherit;letter-spacing:0;text-transform:none;color:var(--ivory);background:#f4f1eb0f;border:1px solid #f4f1eb2e;outline:none;width:100%;padding:13px 14px;font-size:15px}.site-form input::placeholder,.site-form textarea::placeholder{color:#f4f1eb73}.site-form select option{color:var(--obsidian)}.site-form textarea{resize:vertical;min-height:110px}.site-form input:focus,.site-form select:focus,.site-form textarea:focus{border-color:var(--stone)}.site-form input[type=file]{padding:10px}.site-form .check{text-transform:none;letter-spacing:0;flex-direction:row;align-items:flex-start;gap:10px;font-size:13px;line-height:1.5}.site-form .check input{width:auto;margin-top:3px}.site-form .check a{border-bottom:1px solid var(--stone)}.site-form .btn{justify-self:start;margin-top:6px}.form-status{min-height:1.2em;color:var(--sand);font-size:13px;line-height:1.5}.form-status.ok{color:#9ee6bf}.form-status.error{color:#ffb4a8}.footer-contact-form .form-status.ok{color:#137a55}.footer-contact-form .form-status.error{color:#b63b18}.share-row{letter-spacing:.06em;text-transform:uppercase;flex-wrap:wrap;gap:14px;font-size:13px;display:flex}.share-row span{color:var(--graphite)}.share-row a{border-bottom:1px solid var(--stone)}.news-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.4vw,34px);display:grid}.news-card{background:#fff;border:1px solid #0c0d0d0f;flex-direction:column;display:flex}.news-media{aspect-ratio:16/10;overflow:hidden}.news-media img{object-fit:cover;height:100%}.news-copy{flex-direction:column;flex:1;gap:10px;padding:22px;display:flex}.news-copy time{letter-spacing:.12em;text-transform:uppercase;color:var(--graphite);font-size:12px}.news-copy h3{letter-spacing:-.02em;margin:0;font-size:22px;font-weight:500;line-height:1.2}.news-copy p{color:var(--charcoal);margin:0;line-height:1.6}.news-copy .text-link{align-self:flex-start;margin-top:auto}.site-pager{letter-spacing:.08em;text-transform:uppercase;color:var(--graphite);justify-content:space-between;gap:20px;margin-top:48px;font-size:13px;display:flex}.site-pager a{color:var(--obsidian);border-bottom:1px solid var(--stone)}.link-list{margin:0;padding:0;list-style:none}.link-list li{border-bottom:1px solid #0c0d0d1f;justify-content:space-between;gap:20px;padding:16px 0;display:flex}.link-list time{color:var(--graphite);white-space:nowrap;font-size:13px}.role-row{transition:padding .5s var(--ease);border-bottom:1px solid #0c0d0d1f;justify-content:space-between;align-items:center;gap:24px;padding:26px 0;display:flex}.role-row:hover{padding-left:12px}.role-row h3{letter-spacing:-.03em;margin:0;font-size:clamp(22px,2.4vw,32px);font-weight:500}.role-row p{color:var(--graphite);margin:6px 0 0}.role-meta{letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;font-size:12px}.two-col{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:clamp(32px,6vw,96px);display:grid}.steps{counter-reset:step;margin:0;padding:0;list-style:none}.steps li{counter-increment:step;color:var(--charcoal);border-bottom:1px solid #0c0d0d1f;grid-template-columns:56px 1fr;gap:0 18px;padding:20px 0;line-height:1.6;display:grid}.steps li:before{content:"0" counter(step);color:var(--stone);grid-row:span 2;font-size:28px;font-weight:500}.steps strong{color:var(--obsidian);font-weight:600}.projects-more{margin:40px 0 0}.projects .projects-more .btn.ghost{color:var(--obsidian)}.simple-lightbox{z-index:300;background:#0c0d0df0;justify-content:center;align-items:center;padding:4vw;display:none;position:fixed;inset:0}.simple-lightbox.open{display:flex}.simple-lightbox figure{width:100%;max-width:1200px;margin:0}.simple-lightbox img{object-fit:contain;max-height:82vh}.simple-lightbox figcaption{color:var(--sand);text-align:center;margin-top:14px;font-size:13px}.lightbox-close{color:#fff;cursor:pointer;background:0 0;border:0;font-size:42px;line-height:1;position:absolute;top:20px;right:24px}.not-found{align-items:center;min-height:100vh;display:flex}@media (width<=1050px){.dev-grid,.news-grid,.dev-grid.small{grid-template-columns:repeat(2,minmax(0,1fr))}.dev-layout{grid-template-columns:1fr}.dev-aside{position:static}.dev-nearby{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.dev-grid,.news-grid,.dev-grid.small,.two-col,.amenities,.dev-plans,.site-form{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.role-row{flex-direction:column;align-items:flex-start}}
