:root { --ink:#07131e; --navy:#071521; --blue:#0e2635; --paper:#f1eee6; --white:#fbfaf6; --gold:#e7b85c; --muted:#9bacb5; --line:rgba(255,255,255,.15); --sans:"Manrope",Arial,sans-serif; --serif:"Playfair Display",Georgia,serif; --mono:"DM Mono",monospace; }
* { box-sizing:border-box; -webkit-tap-highlight-color:transparent; } html { scroll-behavior:smooth; -webkit-text-size-adjust:100%; } body { margin:0; background:var(--navy); color:var(--white); font-family:var(--sans); overflow-x:hidden; } body.intro-running { overflow:hidden; } a { color:inherit; text-decoration:none; } button,input,textarea { font:inherit; } button { cursor:pointer; } .skip-link { position:fixed; top:-50px; left:20px; z-index:1000; background:var(--gold); color:var(--ink); padding:10px 16px; font-size:13px; } .skip-link:focus { top:20px; }
.intro-scene { position:fixed; z-index:100; inset:0; min-height:520px; overflow:hidden; background:radial-gradient(ellipse at 68% 37%,#173144 0%,#0a1c29 38%,#030a10 86%); transition:transform 1.15s cubic-bezier(.76,0,.24,1),visibility 1.15s; } .intro-scene.is-leaving { transform:translateY(-100%); visibility:hidden; } .intro-grain,.intro-scene:after { position:absolute; inset:0; pointer-events:none; content:""; } .intro-grain { opacity:.18; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.72'/%3E%3C/svg%3E"); mix-blend-mode:soft-light; } .intro-scene:after { background:linear-gradient(90deg,rgba(0,0,0,.37),transparent 65%),linear-gradient(0deg,#020a0f 0%,transparent 44%); } .intro-copy { position:absolute; z-index:2; top:13%; left:clamp(24px,6vw,92px); } .eyebrow { font:500 10px/1.4 var(--mono); letter-spacing:.15em; color:var(--gold); margin:0 0 18px; } .intro-copy p { margin:0; font:600 clamp(22px,3vw,45px)/1.2 var(--serif); color:#d4d9da; opacity:.42; transition:opacity 1s; } .intro-scene.is-lit .intro-copy p { opacity:.8; }.moon { position:absolute; z-index:1; top:11%; right:17%; width:clamp(60px,7vw,112px); aspect-ratio:1; border-radius:50%; background:#e7ddba; opacity:.05; box-shadow:0 0 90px 35px rgba(223,202,121,.02); transition:opacity 1s,box-shadow 1s; }.intro-scene.is-lit .moon { opacity:.72; box-shadow:0 0 100px 30px rgba(223,202,121,.14); }
.city { position:absolute; z-index:2; inset:auto 0 0; height:51%; } .city-glow { position:absolute; inset:0; background:radial-gradient(ellipse at 68% 85%,rgba(242,164,45,.54),transparent 24%),radial-gradient(ellipse at 34% 88%,rgba(238,180,74,.18),transparent 25%); opacity:0; filter:blur(18px); transition:opacity 1.1s ease .45s; }.is-lit .city-glow { opacity:1; } .building { position:absolute; bottom:0; display:grid; grid-template-columns:repeat(2,10px); grid-auto-rows:13px; gap:14px 17px; align-content:start; padding:25px 13px; background:linear-gradient(110deg,#040a0f,#0c1e2b); box-shadow:inset -9px 0 17px rgba(0,0,0,.55); } .building:before { content:""; position:absolute; top:-11px; left:0; width:100%; height:12px; background:#0a1720; transform:skewY(-6deg); transform-origin:right; } .building i { width:5px; height:5px; border-radius:1px; background:#d6e5f0; opacity:.04; box-shadow:0 0 8px transparent; transition:opacity .32s,background .32s,box-shadow .32s; }.is-lit .building i { opacity:.92; background:#f6cc69; box-shadow:0 0 11px #f6a938; }.building--one { left:-1%;width:17%;height:58%; }.building--two { left:13%;width:15%;height:78%; }.building--three { left:27%;width:16%;height:49%; }.building--four { right:27%;width:17%;height:63%; }.building--five { right:10%;width:20%;height:86%; }.building--six { right:-3%;width:17%;height:53%; }.building--one i:nth-child(2n),.building--three i:nth-child(3n),.building--five i:nth-child(2n){transition-delay:.75s}.building--two i:nth-child(2n),.building--four i:nth-child(3n),.building--six i:nth-child(2n){transition-delay:1.1s}.sign { position:absolute; z-index:3; bottom:53%; right:16%; display:flex; flex-direction:column; transform:translateY(35px); opacity:0; padding:7px 14px 6px; color:#eed07d; text-align:center; letter-spacing:.22em; background:#102c3a; border:1px solid rgba(239,196,82,.54); box-shadow:0 0 0 4px rgba(0,0,0,.2),0 0 30px rgba(244,177,39,.25); transition:transform .8s cubic-bezier(.34,1.56,.64,1) 1.25s,opacity .6s 1.25s,box-shadow .6s 1.25s; }.sign:before,.sign:after { content:""; position:absolute; bottom:-25px; width:3px; height:25px; background:#0b141b; }.sign:before{left:15px}.sign:after{right:15px}.sign span{font:800 clamp(13px,2vw,25px)/1 var(--sans)}.sign small{font:8px/1.2 var(--mono);margin-top:4px}.is-lit .sign { opacity:1; transform:translateY(0); box-shadow:0 0 0 4px rgba(0,0,0,.2),0 0 42px rgba(244,177,39,.52); }
.line { position:absolute; z-index:5; left:65.2%; top:0; width:2px; height:67%; background:linear-gradient(#9caab0,#d7e2e4); box-shadow:0 0 7px rgba(241,220,159,.28); transform-origin:top; transition:transform 1s cubic-bezier(.22,1,.36,1); }.line-knot { position:absolute; top:37%; left:50%; transform:translate(-50%,-50%); width:9px;height:9px;border-radius:50%; background:#c7d0ce;box-shadow:0 1px 5px #000}.pull-handle { position:absolute; bottom:-13px; left:50%; width:34px;height:13px; transform:translateX(-50%); border:2px solid #c7d0ce;border-radius:0 0 12px 12px; }.is-lit .line{transform:scaleY(.9)}.figure { --figure-scale:1; position:absolute; z-index:6; bottom:9.5%; left:calc(65.2% - 108px); width:144px; height:255px; filter:drop-shadow(0 15px 12px rgba(0,0,0,.56)); transform-origin:74% 38%; animation:figure-pull 1.8s ease-in-out 1 both; }.figure-art{display:block;width:100%;height:100%;overflow:visible}.figure-pull-arm,.figure-sleeve,.figure-hand{transform-box:fill-box;transform-origin:100% 50%;animation:arm-pull 1.8s ease-in-out 1 both}.figure-light{opacity:.12;filter:drop-shadow(0 0 0 transparent);transition:opacity .7s .48s,filter .7s .48s}.is-lit .figure-light{opacity:1;filter:drop-shadow(0 0 9px #f5b848)}.figure-shadow{opacity:.75;transform-box:fill-box;transform-origin:center;animation:shadow-shift 1.8s ease-in-out 1 both}@keyframes figure-pull {0%,34%{transform:translateY(0) rotate(0) scale(var(--figure-scale))}48%{transform:translateY(-4px) rotate(-2deg) scale(var(--figure-scale))}66%{transform:translateY(16px) rotate(4deg) scale(var(--figure-scale))}82%{transform:translateY(7px) rotate(1deg) scale(var(--figure-scale))}100%{transform:translateY(5px) rotate(0) scale(var(--figure-scale))}}@keyframes arm-pull {0%,34%{transform:translate(0,0) rotate(0)}52%{transform:translate(4px,-2px) rotate(-5deg)}68%{transform:translate(7px,13px) rotate(8deg)}100%{transform:translate(3px,5px) rotate(0)}}@keyframes shadow-shift {0%,34%{transform:scaleX(1)}68%{transform:scaleX(1.14)}100%{transform:scaleX(1.04)}}.intro-bottom{position:absolute;z-index:9;bottom:30px;left:clamp(24px,6vw,92px);right:clamp(24px,6vw,92px);display:flex;align-items:center;justify-content:space-between;font:10px var(--mono);letter-spacing:.13em}.intro-status{display:flex;align-items:center;gap:8px;color:#aab8b9;transition:color .4s}.intro-status b{width:6px;height:6px;border-radius:50%;background:#8a99a1;box-shadow:0 0 0 transparent;transition:.4s}.is-lit .intro-status{color:#efd385}.is-lit .intro-status b{background:var(--gold);box-shadow:0 0 15px var(--gold)}.skip-intro{border:0;background:transparent;color:#c5cdcb;font:inherit;letter-spacing:inherit;padding:8px 0}.skip-intro span{color:var(--gold);font-size:16px;margin-left:5px}.is-lit .skip-intro{opacity:0;pointer-events:none;transition:opacity .3s}
.site-header { position:fixed; z-index:50; top:0; left:0; width:100%; padding:24px clamp(22px,5vw,76px); display:flex; align-items:center; justify-content:space-between; gap:20px; color:#eef1ee; transition:background .35s,padding .35s,transform .35s; }.site-header.scrolled { padding-top:14px;padding-bottom:14px;background:rgba(5,17,27,.86);backdrop-filter:blur(14px);}.brand{display:flex;align-items:center;gap:9px;font-weight:800;font-size:17px;line-height:.9;letter-spacing:-.05em}.brand small{display:block;font:7px/1.2 var(--mono);letter-spacing:.28em;margin:4px 0 0 1px}.brand-mark{width:22px;height:25px;display:flex;align-items:flex-end;gap:2px}.brand-mark i{display:block;width:5px;background:var(--gold);border-radius:2px 2px 0 0}.brand-mark i:nth-child(1){height:10px}.brand-mark i:nth-child(2){height:20px}.brand-mark i:nth-child(3){height:14px}.main-nav{display:flex;gap:clamp(14px,2.4vw,36px);margin-left:auto}.main-nav a{font-size:11px;font-weight:600;color:#d4dbdb;transition:color .2s}.main-nav a:hover{color:var(--gold)}.header-cta{font:600 11px var(--mono);letter-spacing:.04em;color:var(--gold);border-bottom:1px solid rgba(231,184,92,.46);padding:5px 0}.header-cta span{margin-left:5px}.menu-toggle{display:none;background:none;border:0;width:44px;padding:14px 0;cursor:pointer}.menu-toggle span{display:block;width:100%;height:1px;margin:6px 0;background:white}.section-shell{position:relative;min-height:100svh}.hero{display:flex;align-items:center;padding:clamp(120px,15vw,180px) clamp(24px,8vw,120px) 100px;overflow:hidden;background:var(--navy)}.hero-media,.hero-veil{position:absolute;inset:0}.hero-media{background-image:url("https://images.unsplash.com/photo-1511818966892-d7d671e672a2?auto=format&fit=crop&w=2200&q=90");background-size:cover;background-position:center}.hero-veil{background:linear-gradient(90deg,rgba(3,13,22,.98) 2%,rgba(4,15,23,.78) 37%,rgba(4,14,21,.23) 85%),linear-gradient(0deg,rgba(4,13,20,.78),transparent 45%)}.hero-content{position:relative;z-index:2;max-width:760px}.hero h1,.section h2{margin:0;letter-spacing:-.065em;font:600 clamp(52px,7.3vw,112px)/.97 var(--serif)}.hero h1 em,.section h2 em{font-weight:600;color:var(--gold)}.hero-summary{max-width:500px;margin:27px 0 31px;color:#d8dfdc;font-size:15px;line-height:1.75}.hero-actions{display:flex;flex-wrap:wrap;row-gap:14px;gap:28px;align-items:center}.button{display:inline-flex;align-items:center;justify-content:center;gap:32px;border:0;padding:15px 17px;font-size:12px;font-weight:700;transition:transform .25s,background .25s}.button:hover{transform:translateY(-3px)}.button span{font-size:17px;line-height:1}.button--light{color:#10202b;background:var(--gold)}.text-link{display:inline-flex;align-items:center;gap:8px;border-bottom:1px solid rgba(255,255,255,.45);padding-bottom:6px;font-size:12px;font-weight:700}.text-link span{color:var(--gold);font-size:15px}.hero-side-note{position:absolute;z-index:2;right:clamp(20px,3.5vw,55px);top:50%;display:flex;align-items:center;gap:10px;transform:rotate(90deg);transform-origin:right top;font:10px var(--mono);letter-spacing:.12em;color:#bac3c4}.hero-side-note i{display:block;width:53px;height:1px;background:rgba(255,255,255,.5)}.scroll-cue{position:absolute;z-index:2;left:clamp(24px,8vw,120px);bottom:31px;display:flex;align-items:center;gap:13px;font:10px var(--mono);letter-spacing:.12em;color:#c4cecd}.scroll-cue i{width:52px;height:1px;background:#dfb058;position:relative}.scroll-cue i:after{content:"";position:absolute;right:0;top:-3px;width:7px;height:7px;border-right:1px solid #dfb058;border-bottom:1px solid #dfb058;transform:rotate(-45deg)}
.section{position:relative;padding:clamp(90px,11vw,160px) clamp(24px,8vw,120px)}.section--dark{background:#071521}.section--paper{background:var(--paper);color:var(--ink)}.section-label{display:flex;gap:15px;align-items:center;color:#60707a;font:500 10px var(--mono);letter-spacing:.13em}.section-label span{color:var(--gold)}.section-label p{margin:0}.section-label:after{content:"";width:60px;height:1px;background:currentColor;opacity:.4}.about{overflow:hidden}.ambient-line{position:absolute;right:-7%;top:16%;width:46%;aspect-ratio:1;border:1px solid rgba(231,184,92,.18);border-radius:50%;box-shadow:0 0 0 50px rgba(231,184,92,.025),0 0 0 105px rgba(231,184,92,.015)}.about-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(350px,.78fr);gap:clamp(45px,9vw,150px);align-items:end;margin-top:80px}.about-copy h2{max-width:690px;font-size:clamp(43px,5.8vw,84px)}.about-copy p{max-width:590px;margin:25px 0 0;color:#aebcc1;font-size:14px;line-height:1.9}.about-copy .lead{color:#edf0eb;font-size:17px;line-height:1.65}.about-copy .text-link{margin-top:31px}.text-link--gold{color:var(--gold);border-color:rgba(231,184,92,.45)}.image-card{position:relative;height:clamp(385px,42vw,610px);overflow:hidden}.image-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,12,18,.8),transparent 55%)}.image-card img{width:100%;height:100%;object-fit:cover;filter:saturate(.65) contrast(1.08)}.image-card-caption{position:absolute;z-index:2;left:28px;bottom:27px}.image-card-caption span{display:block;margin-bottom:8px;font:10px var(--mono);letter-spacing:.11em;color:var(--gold)}.image-card-caption strong{font:600 23px/1.18 var(--serif)}.service-strip{position:relative;z-index:2;margin-top:72px;display:flex;flex-wrap:wrap;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service-strip span{padding:19px 27px 19px 0;margin-right:27px;color:#c5d0d0;font-size:12px;font-weight:600}.service-strip span:not(:last-child):after{content:"";position:absolute;margin-left:27px;width:4px;height:4px;margin-top:7px;background:var(--gold);border-radius:50%}.stats-grid{position:relative;z-index:2;margin-top:90px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.stat{padding-top:21px;display:flex;align-items:flex-end;gap:17px;border-right:1px solid var(--line)}.stat:not(:first-child){padding-left:clamp(18px,4vw,66px)}.stat:last-child{border-right:0}.stat strong{color:var(--gold);font:600 clamp(45px,5vw,75px)/.8 var(--serif);letter-spacing:-.07em}.stat strong:after{content:"+";font:400 20px var(--sans);vertical-align:top;margin-left:4px}.stat:last-child strong:after{content:"%"}.stat span{font-size:11px;line-height:1.45;color:#bdcbcb;font-weight:600}.vision{min-height:100svh;display:flex;align-items:center;overflow:hidden}.vision-media,.vision-overlay{position:absolute;inset:0}.vision-media{background:url("https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=2200&q=88") center/cover}.vision-overlay{background:linear-gradient(90deg,rgba(2,11,18,.91),rgba(2,10,16,.62) 50%,rgba(2,10,16,.3)),linear-gradient(0deg,rgba(2,10,16,.72),transparent 55%)}.vision .section-label{position:absolute;top:clamp(90px,11vw,160px);z-index:2}.section-label--light{color:#bfcccc}.vision-content{position:relative;z-index:2;margin-left:clamp(0px,10vw,150px);max-width:780px}.vision h2{font-size:clamp(54px,7.6vw,112px)}.vision-quote{max-width:515px;margin:27px 0 34px;color:#d3dddd;font-size:15px;line-height:1.9}.motto{display:flex;gap:14px;align-items:flex-start;color:var(--gold)}.motto span{font:70px/.65 var(--serif)}.motto p{margin:2px 0 0;font:600 22px/1.15 var(--serif)}.projects{padding-bottom:clamp(90px,11vw,160px)}.section-heading{display:grid;grid-template-columns:1fr 1.48fr;gap:50px;align-items:start}.section-heading h2,.catalog-top h2,.contact h2{font-size:clamp(48px,6.4vw,96px)}.section-heading>div:last-child>p,.catalog-top>div:last-child>p{max-width:430px;margin:23px 0 0;color:#59666d;font-size:14px;line-height:1.8}.project-list{margin-top:95px;display:grid;grid-template-columns:1fr 1fr;gap:50px 3.5vw}.project{position:relative}.project--one{grid-column:1}.project--two{grid-column:2;margin-top:18vw}.project--three{grid-column:1;margin-top:-1vw}.project--four{grid-column:2;margin-top:-6vw}.project-image{position:relative;overflow:hidden;background:#d4d0c6}.project-image img{display:block;width:100%;height:clamp(290px,38vw,540px);object-fit:cover;filter:saturate(.65) contrast(.95);transition:transform .6s ease,filter .6s}.project:hover img{transform:scale(1.04);filter:saturate(.95) contrast(1)}.project-number{position:absolute;left:18px;top:17px;color:#fff;font:10px var(--mono);letter-spacing:.1em}.project-meta{padding-top:15px;display:flex;justify-content:space-between;gap:15px}.project-meta p{margin:0 0 7px;color:#857f72;font:10px var(--mono);letter-spacing:.11em}.project-meta h3{margin:0;font:600 clamp(20px,2.1vw,31px)/1.08 var(--serif);letter-spacing:-.035em}.project-meta>span{color:#998e7a;font:10px var(--mono)}.catalog{background:#06131d;overflow:hidden}.catalog:after{content:"";position:absolute;right:-11%;bottom:-20%;width:55vw;aspect-ratio:1;border-radius:50%;border:1px solid rgba(218,178,93,.1);box-shadow:0 0 0 70px rgba(218,178,93,.018)}.catalog-top{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1.48fr;gap:50px}.catalog-top>div:last-child>p{color:#a9b8bb}.catalog-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(2,1fr);gap:1px;margin-top:95px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.16)}.catalog-card{position:relative;min-height:270px;padding:25px 27px;background:#081923;color:var(--white);border:0;text-align:left;overflow:hidden;transition:background .35s}.catalog-card:hover{background:#102b37}.catalog-card--featured{min-height:360px;grid-column:span 2;background:linear-gradient(90deg,rgba(6,20,30,.9),rgba(6,20,30,.3)),url("https://images.unsplash.com/photo-1513506003901-1e6a229e2d15?auto=format&fit=crop&w=1700&q=85") center/cover}.catalog-card--featured:hover{background-color:rgba(11,33,43,.45)}.catalog-index{color:#9caeb3;font:10px var(--mono)}.catalog-arrow{position:absolute;right:26px;top:20px;color:var(--gold);font-size:20px}.catalog-card div{position:absolute;left:27px;bottom:25px}.catalog-card p{margin:0 0 8px;color:var(--gold);font:10px var(--mono);letter-spacing:.13em}.catalog-card h3{margin:0;font:600 clamp(24px,3vw,42px)/1.05 var(--serif);letter-spacing:-.045em}.brand-note{position:relative;z-index:2;padding-top:32px;display:grid;grid-template-columns:.85fr 1.8fr .95fr;gap:30px;align-items:center}.brand-note>span{font:10px/1.55 var(--mono);letter-spacing:.11em;color:#9facaf}.brand-note div{display:flex;flex-wrap:wrap;gap:20px 30px;align-items:center}.brand-note b{font-weight:800;font-size:clamp(14px,1.5vw,22px);letter-spacing:-.05em;color:#d2d8d6}.brand-note small{font-size:9px;line-height:1.55;color:#77898f}.contact{padding-top:clamp(90px,11vw,160px);padding-bottom:0}.contact-intro{max-width:810px}.contact-intro h2{margin:38px 0 22px}.contact-intro>p{max-width:470px;color:#59666d;font-size:15px;line-height:1.75}.contact-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:clamp(55px,10vw,160px);margin-top:72px}.contact-form{display:flex;flex-direction:column;gap:24px}.contact-form label{display:flex;flex-direction:column;gap:8px;color:#68747a;font:10px var(--mono);letter-spacing:.09em}.contact-form input,.contact-form textarea{width:100%;border:0;border-bottom:1px solid #a6aaa4;border-radius:0;padding:8px 0 12px;background:transparent;outline:0;color:#16232a;font:500 16px var(--sans);letter-spacing:normal;transition:border .2s}.contact-form textarea{resize:vertical;min-height:85px}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#929b9e}.contact-form input:focus,.contact-form textarea:focus{border-color:#c88e2d}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:30px}.button--dark{align-self:flex-start;background:#0b1d27;color:#fff;padding:16px 20px;margin-top:4px}.form-feedback{min-height:16px;margin:-8px 0 0;color:#816126;font-size:12px}.contact-details{border-top:1px solid #a6aaa4}.contact-details>a,.contact-details>div{display:flex;flex-direction:column;gap:7px;padding:20px 0;border-bottom:1px solid #a6aaa4;transition:padding .2s}.contact-details>a:hover{padding-left:8px}.contact-details span{color:#778187;font:10px var(--mono);letter-spacing:.11em}.contact-details strong{font:600 16px/1.25 var(--sans);letter-spacing:-.03em}.contact-details em{color:#8e9698;font-size:11px;font-style:normal}.contact-map{position:relative;margin-top:100px;height:clamp(280px,35vw,480px);overflow:hidden;background:#d7d5cc;background-image:linear-gradient(125deg,transparent 47%,rgba(255,255,255,.4) 48%,transparent 49%),linear-gradient(40deg,transparent 44%,rgba(255,255,255,.4) 45%,transparent 46%);}.contact-map:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 52% 48%,transparent 0,rgba(237,233,220,.15) 35%,rgba(113,123,120,.18) 100%)}.map-line{position:absolute;height:18px;border-top:2px solid rgba(147,154,149,.65);border-bottom:2px solid rgba(255,255,255,.55);border-radius:50%;opacity:.6}.map-line--one{width:110%;left:-4%;top:38%;transform:rotate(-9deg)}.map-line--two{width:70%;left:12%;top:56%;transform:rotate(17deg)}.map-line--three{width:60%;right:-5%;top:20%;transform:rotate(-38deg)}.map-pin{position:absolute;z-index:2;top:43%;left:52%;display:flex;align-items:center;gap:12px;transform:translate(-50%,-50%)}.map-pin i{width:17px;height:17px;border:5px solid var(--gold);border-radius:50%;box-shadow:0 0 0 7px rgba(231,184,92,.28)}.map-pin span{color:#303f40;font:600 11px/1.12 var(--mono);letter-spacing:.07em}.map-caption{position:absolute;z-index:2;bottom:20px;right:26px;color:#5f6a68;font:10px var(--mono);letter-spacing:.1em}.site-footer{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:20px;padding:28px clamp(24px,8vw,120px);background:#071521;color:#d6dedc}.site-footer>p{margin:0;text-align:center;color:var(--gold);font:600 17px var(--serif)}.site-footer>a:last-of-type{text-align:right;font:10px var(--mono);letter-spacing:.09em}.site-footer>a:last-of-type span{color:var(--gold);font-size:16px;margin-left:6px}.site-footer small{grid-column:1/-1;color:#72818a;font:9px var(--mono);letter-spacing:.07em}.brand--footer{font-size:15px}.product-dialog{width:min(92vw,520px);border:1px solid rgba(231,184,92,.4);padding:46px 40px 39px;background:#0b202b;color:#eff2ed;box-shadow:0 30px 80px rgba(0,0,0,.45)}.product-dialog::backdrop{background:rgba(2,10,16,.72);backdrop-filter:blur(5px)}.product-dialog h3{margin:0 0 16px;font:600 42px/.98 var(--serif);letter-spacing:-.055em}.product-dialog>p:not(.eyebrow){margin:0 0 30px;color:#bec9c8;font-size:14px;line-height:1.75}.dialog-close{position:absolute;right:16px;top:10px;border:0;background:transparent;color:#dce5e2;font-size:29px;font-weight:200}.dialog-contact{font-size:11px}
.reveal,.reveal-up{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s cubic-bezier(.22,1,.36,1)}.is-visible{opacity:1;transform:none}.delay-1{transition-delay:.1s}.delay-2{transition-delay:.2s}.delay-3{transition-delay:.3s}
@media (max-width:850px){.main-nav,.header-cta{display:none}.menu-toggle{display:block}.hero-side-note{display:none}.site-header.menu-open{background:#071521}.site-header.menu-open .main-nav{display:flex;position:absolute;top:100%;left:0;width:100%;padding:15px 24px 23px;flex-direction:column;gap:15px;background:#071521}.site-header.menu-open .main-nav a{display:block;padding:9px 0;font-size:14px}.about-grid,.section-heading,.catalog-top,.contact-grid{grid-template-columns:1fr}.about-grid{margin-top:54px}.about-image{max-width:600px}.stats-grid{margin-top:60px}.vision-content{margin-left:0}.project-list{margin-top:60px;gap:45px 20px}.project--two{margin-top:13vw}.project--four{margin-top:-4vw}.brand-note{grid-template-columns:1fr;gap:15px}.brand-note div{gap:14px 22px}.intro-copy{top:10%}.line{left:72%}.figure{--figure-scale:.87;left:calc(72% - 108px);transform-origin:74% 100%}.sign{right:5%}.site-footer{grid-template-columns:1fr 1fr}.site-footer>p{display:none}.site-footer>a:last-of-type{text-align:right}.site-footer small{grid-column:1/-1}.contact-map{margin-left:-24px;margin-right:-24px}}
@media (max-width:560px){.intro-copy p{font-size:25px}.intro-copy .eyebrow{font-size:8px}.intro-bottom{bottom:20px}.line{left:78%;height:61%}.figure{--figure-scale:.66;left:calc(78% - 108px);bottom:12%;transform-origin:74% 100%}.building{grid-template-columns:repeat(2,5px);grid-auto-rows:8px;gap:10px 10px;padding:16px 8px}.building i{width:3px;height:3px}.sign{bottom:49%;right:3%;padding:5px 7px 4px}.sign small{font-size:5px}.hero{padding-left:24px;padding-right:24px}.hero-side-note{display:none}.hero h1,.section h2{letter-spacing:-.07em}.hero-summary{font-size:14px}.hero-actions{gap:17px}.button{gap:20px}.scroll-cue{left:24px}.section{padding-left:24px;padding-right:24px}.about-copy .lead{font-size:16px}.stats-grid{grid-template-columns:1fr;gap:16px}.stat{border-right:0!important;border-bottom:1px solid var(--line);padding:14px 0!important}.stat:last-child{border-bottom:0}.service-strip span{padding-right:13px;margin-right:13px}.service-strip span:not(:last-child):after{margin-left:13px}.vision{min-height:760px}.vision-overlay{background:linear-gradient(90deg,rgba(2,11,18,.9),rgba(2,10,16,.46)),linear-gradient(0deg,rgba(2,10,16,.85),transparent 60%)}.project-list{grid-template-columns:1fr;gap:50px}.project--one,.project--two,.project--three,.project--four{grid-column:1;margin-top:0}.project-image img{height:340px}.catalog-grid{grid-template-columns:1fr}.catalog-card--featured{grid-column:span 1}.catalog-card{min-height:225px}.catalog-card--featured{min-height:290px}.catalog-grid{margin-top:60px}.form-row{grid-template-columns:1fr;gap:24px}.contact-grid{margin-top:48px}.contact-map{margin-top:70px}.site-footer{padding:24px;grid-template-columns:1fr 1fr}.site-footer .brand{font-size:13px}.site-footer>a:last-of-type{font-size:9px}.product-dialog{padding:43px 27px 31px}.product-dialog h3{font-size:36px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.intro-scene{display:none}body{overflow:auto!important}.reveal,.reveal-up{opacity:1;transform:none;transition:none}.figure,.figure-pull-arm,.figure-sleeve,.figure-hand,.figure-shadow{animation:none}.site-header{position:absolute}}

/* Premium opening animation: a single editorial silhouette and a restrained energy pulse. */
.line{height:71%;background:linear-gradient(#b9c6cb 0%,#e7eff0 72%,#98a9af 100%);box-shadow:0 0 8px rgba(230,213,157,.18)}
.energy-pulse{position:absolute;z-index:2;left:50%;bottom:-4px;width:10px;height:10px;border-radius:50%;background:#f4ca70;opacity:0;transform:translateX(-50%);filter:blur(.1px);box-shadow:0 0 0 0 rgba(246,196,91,0),0 0 14px rgba(246,196,91,0)}
.is-lit .energy-pulse{animation:cable-current .92s cubic-bezier(.4,0,.2,1) .06s both}
.is-lit .city-glow{transition-delay:.68s}
.puller{--puller-scale:1;position:absolute;z-index:6;bottom:9.8%;left:calc(65.2% - 105px);width:144px;height:238px;filter:drop-shadow(0 14px 13px rgba(0,0,0,.55));transform-origin:73% 49%;animation:silhouette-pull 1.72s cubic-bezier(.45,0,.2,1) both}
.puller-art{display:block;width:100%;height:100%;overflow:visible}.puller-shadow{fill:#02090d;opacity:.78;transform-box:fill-box;transform-origin:center;animation:shadow-breathe 1.72s ease-in-out both}.puller-back-arm,.puller-leg,.puller-front-arm{fill:none;stroke:#091923;stroke-linecap:round;stroke-linejoin:round}.puller-back-arm{stroke-width:15px;opacity:.84}.puller-leg{stroke-width:19px}.puller-coat{fill:#0a1b25}.puller-head{fill:#10232d}.puller-hair{fill:#071218}.puller-arm{transform-box:fill-box;transform-origin:83% 50%;animation:arm-tension 1.72s cubic-bezier(.45,0,.2,1) both}.puller-front-arm{stroke:#0b1b25;stroke-width:16px}.puller-hand{fill:#e3b45f;stroke:#f5d88d;stroke-width:1.5px;filter:drop-shadow(0 0 2px rgba(245,207,112,.35))}.puller-rim{fill:none;stroke:#d8ac59;stroke-width:1.15px;stroke-linecap:round;opacity:.62}
@keyframes cable-current{0%{bottom:-4px;opacity:0;box-shadow:0 0 0 0 rgba(246,196,91,0),0 0 14px rgba(246,196,91,0)}10%{opacity:1;box-shadow:0 0 0 6px rgba(246,196,91,.16),0 0 15px rgba(246,196,91,.86)}70%{opacity:1;box-shadow:0 0 0 5px rgba(246,196,91,.1),0 0 17px rgba(246,196,91,.8)}100%{bottom:96%;opacity:0;box-shadow:0 0 0 20px rgba(246,196,91,0),0 0 6px rgba(246,196,91,0)}}
@keyframes silhouette-pull{0%,34%{transform:translateY(0) rotate(0) scale(var(--puller-scale))}51%{transform:translateY(-3px) rotate(-1.2deg) scale(var(--puller-scale))}69%{transform:translateY(12px) rotate(2.8deg) scale(var(--puller-scale))}84%{transform:translateY(5px) rotate(.5deg) scale(var(--puller-scale))}100%{transform:translateY(4px) rotate(0) scale(var(--puller-scale))}}
@keyframes arm-tension{0%,34%{transform:translate(0) rotate(0)}51%{transform:translate(2px,-2px) rotate(-3deg)}69%{transform:translate(7px,11px) rotate(7deg)}100%{transform:translate(3px,4px) rotate(0)}}
@keyframes shadow-breathe{0%,34%{transform:scaleX(1)}69%{transform:scaleX(1.12)}100%{transform:scaleX(1.04)}}
@media (max-width:850px){.line{left:72%}.puller{--puller-scale:.86;left:calc(72% - 105px);transform-origin:73% 100%}}
@media (max-width:560px){.line{left:78%;height:65%}.puller{--puller-scale:.64;left:calc(78% - 105px);bottom:11.5%;transform-origin:73% 100%}}
@media (prefers-reduced-motion:reduce){.puller,.puller-arm,.puller-shadow,.energy-pulse{animation:none!important}}

/* Silhouette contrast and sky-billboard sequence. */
.puller{filter:drop-shadow(0 16px 14px rgba(0,0,0,.62)) drop-shadow(0 0 18px rgba(93,178,208,.12))}
.puller:before{content:"";position:absolute;z-index:-1;inset:16% -22% 8%;border-radius:50%;background:radial-gradient(ellipse,rgba(80,157,189,.2),rgba(26,62,78,.08) 40%,transparent 69%);filter:blur(10px)}
.puller-coat{fill:#234b5d}.puller-head{fill:#486e7d}.puller-hair{fill:#102b36}.puller-back-arm,.puller-leg,.puller-front-arm{stroke:#1b3b4b}.puller-back-arm{stroke:#284f61}.puller-leg{stroke:#183646}.puller-front-arm{stroke:#284d5e}.puller-rim{stroke:#f0c56d;stroke-width:1.4px;opacity:.88}.puller-hand{fill:#f0c46c;stroke:#fff0b8;filter:drop-shadow(0 0 5px rgba(246,203,105,.72))}
.sky-sign{position:absolute;z-index:8;top:18%;left:calc(65.2% - 118px);display:flex;flex-direction:column;align-items:center;min-width:236px;padding:11px 18px 9px;color:#9faeae;text-align:center;letter-spacing:.25em;background:rgba(6,20,29,.72);border:1px solid rgba(148,181,192,.38);box-shadow:0 0 0 5px rgba(2,10,15,.15),inset 0 0 22px rgba(89,157,182,.06);opacity:.32;transform:translateY(10px) scale(.96);transition:opacity .42s ease .63s,transform .72s cubic-bezier(.22,1,.36,1) .57s,color .55s ease .65s,border-color .55s ease .65s,box-shadow .7s ease .65s}
.sky-sign span{font:800 clamp(15px,2vw,27px)/1 var(--sans)}.sky-sign small{margin-top:5px;font:9px/1.1 var(--mono);letter-spacing:.44em}.sky-sign i{position:absolute;left:50%;top:50%;width:9px;height:9px;border-radius:50%;transform:translate(-50%,-50%);background:#f4ca70;opacity:0;box-shadow:0 0 0 0 rgba(246,197,90,0)}
.is-lit .sky-sign{color:#ffe2a0;border-color:rgba(255,211,112,.92);opacity:1;transform:translateY(0) scale(1);box-shadow:0 0 0 5px rgba(2,10,15,.22),0 0 37px rgba(245,184,65,.55),inset 0 0 22px rgba(248,199,99,.23)}.is-lit .sky-sign i{animation:sign-charge .82s ease-out .61s both}
.is-lit .city-glow{transition-delay:.98s}.is-lit .building i{transition-delay:1.18s}.is-lit .building i:nth-child(2n){transition-delay:1.4s}
@keyframes sign-charge{0%{opacity:0;box-shadow:0 0 0 0 rgba(246,197,90,0)}35%{opacity:1;box-shadow:0 0 0 22px rgba(246,197,90,.2),0 0 36px rgba(246,197,90,.95)}100%{opacity:0;box-shadow:0 0 0 62px rgba(246,197,90,0),0 0 7px rgba(246,197,90,0)}}
@media (max-width:850px){.sky-sign{left:calc(72% - 106px);min-width:212px;padding:10px 15px 8px}}
@media (max-width:560px){.sky-sign{top:16%;left:calc(78% - 78px);min-width:156px;padding:7px 10px 6px;letter-spacing:.16em}.sky-sign span{font-size:13px}.sky-sign small{margin-top:3px;font-size:6px;letter-spacing:.32em}}

/* ---------- Ek mobil uyumluluk düzeltmeleri ---------- */

/* Çentik / Dynamic Island bulunan cihazlarda güvenli kenar boşluğu */
.site-header{padding-left:max(clamp(22px,5vw,76px),env(safe-area-inset-left));padding-right:max(clamp(22px,5vw,76px),env(safe-area-inset-right))}
.site-footer{padding-left:max(clamp(24px,8vw,120px),env(safe-area-inset-left));padding-right:max(clamp(24px,8vw,120px),env(safe-area-inset-right));padding-bottom:max(28px,env(safe-area-inset-bottom))}

/* Çok küçük telefonlar (≤380px) için ek sıkılaştırma */
@media (max-width:380px){
  .intro-copy{left:18px;top:9%}
  .intro-copy p{font-size:21px}
  .sky-sign{min-width:132px;padding:6px 8px 5px;left:calc(78% - 66px)}
  .sky-sign span{font-size:11px}
  .line{left:80%}
  .puller{--puller-scale:.56;left:calc(80% - 105px)}
  .building{padding:12px 6px;gap:8px 8px}
  .hero{padding-left:18px;padding-right:18px;padding-top:110px}
  .section{padding-left:18px;padding-right:18px}
  .hero-summary{font-size:13px}
  .button{padding:13px 14px;font-size:11px}
  .stat strong{font-size:38px}
  .site-footer{grid-template-columns:1fr;text-align:center;gap:12px}
  .site-footer>a:last-of-type{text-align:center}
  .intro-bottom{flex-wrap:wrap;gap:10px;left:18px;right:18px}
}

/* Kısa yükseklikli / yatay mod ekranlarda giriş animasyonunun sıkışmasını önle */
@media (max-height:480px) and (orientation:landscape){
  .intro-scene{min-height:100%}
  .intro-copy{top:6%}
  .moon{top:8%}
  .line{height:74%}
  .intro-bottom{bottom:12px}
  .section-shell{min-height:auto}
  .hero{min-height:auto;padding-top:100px;padding-bottom:60px}
  .vision{min-height:auto;padding-top:80px;padding-bottom:80px}
}

/* Dokunmatik cihazlarda buton/link hover efektlerinin "yapışık" kalmasını önle */
@media (hover:none){
  .button:hover,.project:hover img,.catalog-card:hover,.contact-details>a:hover{transform:none}
}

/* ---------- WhatsApp butonu ve sadeleştirilmiş iletişim düzeni ---------- */
.contact-grid--simple{grid-template-columns:1fr;max-width:540px}
.contact-whatsapp-row{border-bottom:1px solid #a6aaa4;padding:20px 0}
.button--whatsapp{gap:10px;background:#132632;color:#fff;border:1px solid rgba(231,184,92,.35);width:100%}
.button--whatsapp:hover{background:#1c3542}
.button--whatsapp .wa-icon{flex:none;color:#25D366}
@media (max-width:560px){
  .contact-grid--simple{max-width:100%}
}
