@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#191919;--orange:#fa5a28;--white:#f0eee8;--muted:#aaa9a5;--line:#ffffff26}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--bg);color:var(--white);font-family:'DM Sans',Arial,sans-serif;font-size:16px}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid currentColor;outline-offset:6px}::selection{background:var(--orange);color:var(--bg)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Manrope,Arial,sans-serif;font-weight:600;letter-spacing:-.065em;line-height:1.05}em{font-style:normal;color:var(--orange)}.skip{position:fixed;top:-100px;background:var(--orange);padding:15px;z-index:9}.skip:focus{top:0}header{margin:0 5.5%;height:110px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;position:relative;z-index:2}.brand{display:flex;align-items:center;gap:13px;font-weight:800;letter-spacing:.015em;font-size:23px;line-height:1}.brand small{display:block;font-size:10px;letter-spacing:.21em;margin-top:8px}.brand-mark{background:var(--orange);width:46px;height:46px;color:var(--bg);font-size:39px;display:grid;place-items:center;position:relative;font-weight:800}.brand-mark>span{position:absolute;right:-5px;top:-8px;font-size:23px;background:var(--orange);line-height:1}nav{display:flex;align-items:center;gap:35px;font-size:14px}nav>a:hover{color:var(--orange)}.nav-cta{border:1px solid #777;padding:14px 19px;min-width:125px;display:flex;justify-content:space-between;gap:25px}.hero{position:relative;min-height:730px;height:calc(100svh - 110px);max-height:980px;overflow:hidden;padding:28px 5.5% 0}.hero-top{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.13em;color:var(--muted)}.hero-text{position:relative;z-index:1;margin-top:80px;width:62%;pointer-events:none}.hero-text a{pointer-events:auto}.eyebrow{font-size:12px;letter-spacing:.12em;font-weight:500}.hero-text .eyebrow{color:var(--orange)}h1{font-size:clamp(76px,8vw,125px);margin:24px 0 26px}.lead{line-height:1.8;color:var(--muted);max-width:460px;margin-bottom:29px}.button{display:inline-flex;align-items:center;justify-content:space-between;padding:19px 24px;gap:50px;font-size:14px;font-weight:600;transition:background .2s,transform .2s}.orange{background:var(--orange);color:var(--bg)}.button:hover{background:#ff784c;transform:translateY(-3px)}.button>span{font-size:24px}.scene-wrap{position:absolute;right:-6%;top:0;width:66%;height:95%;background:radial-gradient(ellipse at 60% 50%,#6c503120,transparent 60%)}canvas{display:block;width:100%;height:100%}.scene-label{position:absolute;right:15%;top:17%;font-size:10px;letter-spacing:.15em;color:#b8b3a9;line-height:1.7;border-top:1px solid #888;padding-top:10px}.hero-bottom{position:absolute;bottom:30px;left:5.5%;right:5.5%;display:flex;justify-content:space-between;align-items:center;font-size:11px;letter-spacing:.08em;z-index:2}.hero-bottom>a{display:flex;gap:16px;align-items:center}.hero-bottom>a>span{font-size:24px;border:1px solid #666;width:40px;height:45px;display:grid;place-items:center}.hero-bottom p{margin:0;line-height:1.6;color:var(--muted)}#motion{background:none;color:var(--muted);border:0;min-height:44px;font-size:12px}.strip{background:var(--orange);color:var(--bg);overflow:hidden;padding:24px 0}.strip>div{display:flex;gap:38px;align-items:center;white-space:nowrap;width:max-content;font-size:20px;font-weight:700;animation:strip 35s linear infinite}.strip span{font-size:26px}@keyframes strip{to{transform:translateX(-45%)}}.services,.process,.contact{padding:78px 5.5% 88px}.services{background:var(--white);color:var(--bg)}.section-top{display:flex;justify-content:space-between;gap:20px;letter-spacing:.13em;font-size:11px;padding-bottom:25px;border-bottom:1px solid var(--line);color:var(--muted)}.services .section-top{color:#63625e;border-color:#19191930}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin:50px 0}.section-heading h2,.process h2{font-size:clamp(45px,5.5vw,82px);margin:0}.section-heading>p{line-height:1.8;margin:0 3% 0 0;color:#696963}.service{display:grid;grid-template-columns:45px 1fr 1fr 45px;gap:28px;align-items:center;border-top:1px solid #19191933;padding:27px 0;transition:padding .25s,background .25s}.service:last-child{border-bottom:1px solid #19191933}.service:hover{padding-left:16px;padding-right:16px;background:#e8e3d9}.num{font-size:12px;color:#89867e}.service h3{font-size:clamp(24px,2.5vw,36px);font-weight:500;letter-spacing:-.045em;margin:0}.service strong{font-size:16px;font-weight:500}.service p{font-size:16px;color:#73716b;line-height:1.6;margin:8px 0 0}.arrow{height:42px;width:42px;border:1px solid #c1bdb4;display:grid;place-items:center;font-size:27px}.service:hover .arrow{background:var(--orange)}.process-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%;margin-top:60px}.process-intro{line-height:1.8;color:var(--muted);max-width:370px;margin-top:28px}.plan-mark{color:var(--orange);font-size:125px;line-height:1;margin-top:20px}.process ol{list-style:none;padding:0;margin:0}.process li{display:flex;gap:26px;border-bottom:1px solid var(--line);padding:0 0 28px;margin-bottom:28px}.process li>span{color:var(--orange);font-size:12px;padding-top:5px}.process h3{font-size:24px;font-weight:500;margin-bottom:12px;letter-spacing:-.03em}.process li p{line-height:1.8;color:var(--muted);margin:0}.contact{background:var(--orange);color:var(--bg)}.contact .section-top{color:#552618;border-color:#19191940}.contact em{color:#fff0e5}.contact .section-heading>p{color:#552618}.people{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:45px 0}.person{border:1px solid #19191950;padding:28px}.person>span{font-size:11px;letter-spacing:.1em}.person h3{font-size:22px;font-weight:500;margin:23px 0 10px}.number{font-size:clamp(25px,3.2vw,46px);letter-spacing:-.045em;font-weight:600;display:inline-block;margin-bottom:25px}.contact-buttons{display:flex;gap:14px}.contact-buttons a{padding:15px 20px;border:1px solid var(--bg);flex:1;font-size:14px;text-align:center;transition:background .2s}.contact-buttons a:first-child{background:var(--bg);color:var(--white)}.contact-buttons a:hover{background:var(--white);color:var(--bg)}.address-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:50px;border-top:1px solid #19191940;padding-top:35px}.address-grid address{font-size:20px;font-style:normal;line-height:1.7;max-width:380px}.map-link{display:inline-block;margin-top:25px;border-bottom:1px solid;padding-bottom:8px;font-size:14px}iframe{border:1px solid #19191940;width:100%;height:280px;filter:grayscale(.7)}footer{display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;padding:40px 5.5% 25px;align-items:center}footer p{margin:0;text-align:center;font-size:14px;color:var(--muted)}footer>a:last-of-type{text-align:right;font-size:14px}footer>small{grid-column:1/-1;border-top:1px solid var(--line);padding-top:20px;color:var(--muted);font-size:12px}.scene-fallback{position:absolute;top:40%;left:40%;font-size:32px}.paused .strip>div{animation-play-state:paused}[hidden]{display:none!important}
@media(max-width:900px){h1{font-size:80px}.hero-text{width:70%}.scene-wrap{right:-20%;width:85%}.section-heading>p{max-width:260px}.service{gap:18px;grid-template-columns:28px 1fr 1fr 40px}.number{font-size:32px}.address-grid{gap:25px}}
@media(max-width:700px){header{height:88px;margin:0 6%}.brand{font-size:19px}.brand-mark{width:37px;height:37px;font-size:31px}.brand small{font-size:8px}nav>a:not(.nav-cta){display:none}.nav-cta{min-width:110px;padding:12px 15px}.hero{height:auto;min-height:990px;padding:22px 6% 0}.hero-top{font-size:9px}.hero-text{width:100%;margin-top:48px}h1{font-size:clamp(61px,13.5vw,94px);margin-top:24px}.hero-text .eyebrow{font-size:10px}.lead{font-size:16px;max-width:380px}.hero-text .button{padding:16px 20px}.scene-wrap{top:485px;right:-14%;width:125%;height:440px}.scene-label{top:15%;right:15%;font-size:9px}.hero-bottom{bottom:22px;left:6%;right:6%;font-size:9px}.hero-bottom p{display:none}#motion{font-size:11px}.strip{padding:18px 0}.strip>div{font-size:16px;gap:25px}.services,.process,.contact{padding:48px 6% 55px}.section-top{font-size:9px;line-height:1.6}.section-top>span:last-child{text-align:right}.section-heading{display:block;margin:35px 0}.section-heading h2,.process h2{font-size:clamp(42px,10vw,64px)}.section-heading>p{margin-top:25px;max-width:none}.service{grid-template-columns:23px 1fr 34px;gap:12px;padding:24px 0}.service h3{font-size:26px}.service>div{grid-column:2;grid-row:2}.service .arrow{grid-column:3;grid-row:1/3;width:32px;height:38px}.service strong{font-size:15px}.service p{font-size:16px}.service:hover{padding:24px 6px}.process-layout{display:block;margin-top:38px}.plan-mark{display:none}.process ol{margin-top:36px}.process h3{font-size:22px}.people{grid-template-columns:1fr;gap:18px;margin:30px 0}.person{padding:23px}.number{font-size:34px}.contact-buttons{gap:10px}.contact-buttons a{padding:14px 10px}.address-grid{grid-template-columns:1fr;gap:28px}.address-grid address{font-size:18px}iframe{height:260px}footer{grid-template-columns:1fr 1fr;padding:32px 6% 22px}footer p{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.strip>div{animation:none}*{transition:none!important}}

/* ===== SHORTS VIDEO FEED ===== */
.shorts-feed{position:relative;width:100%;max-width:480px;margin:50px auto 0;display:flex;flex-direction:column;gap:20px}
.short-card{position:relative;width:100%;aspect-ratio:9/16;overflow:hidden;border-radius:20px;background:#0a0a0a;box-shadow:0 8px 40px rgba(0,0,0,.3),0 0 0 1px rgba(255,255,255,.06)}
.short-video{width:100%;height:100%;object-fit:cover;display:block;background:#111}
.short-overlay{position:absolute;bottom:0;left:0;right:0;padding:32px 26px 34px;background:linear-gradient(0deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.55) 45%,rgba(0,0,0,.1) 75%,transparent 100%);z-index:2;pointer-events:none;display:flex;flex-direction:column;gap:6px}
.short-overlay>*{pointer-events:auto}
.short-num{font-size:11px;letter-spacing:.2em;color:var(--orange);font-weight:700}
.short-title{font-family:Manrope,Arial,sans-serif;font-size:clamp(26px,5vw,38px);font-weight:700;letter-spacing:-.04em;color:#fff;margin:0 0 4px;line-height:1.15;text-shadow:0 2px 12px rgba(0,0,0,.5)}
.short-desc{font-size:15px;line-height:1.6;color:rgba(255,255,255,.88);margin:0 0 18px;text-shadow:0 1px 6px rgba(0,0,0,.4)}
.short-desc>span{display:block;font-size:13px;color:rgba(255,255,255,.55);margin-top:5px}
.short-cta{display:inline-flex;align-items:center;gap:10px;background:var(--orange);color:var(--bg);padding:14px 24px;font-size:14px;font-weight:600;border:none;cursor:pointer;transition:background .2s,transform .2s;text-decoration:none;width:fit-content;border-radius:8px}
.short-cta:hover{background:#ff784c;transform:translateY(-2px)}
.short-cta>span{font-size:18px}
/* Progress bar */
.short-progress{position:absolute;top:14px;left:18px;right:18px;height:3px;background:rgba(255,255,255,.13);border-radius:3px;z-index:3;overflow:hidden}
.short-progress-bar{height:100%;width:0%;background:var(--orange);border-radius:3px;transition:width .1s linear}
/* Navigation - hidden in stacked mode */
.shorts-nav{display:none}
/* Pause indicator */
.short-card::after{content:'▶';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(0);font-size:60px;color:rgba(255,255,255,.8);z-index:4;transition:transform .25s cubic-bezier(.34,1.56,.64,1);pointer-events:none;text-shadow:0 4px 24px rgba(0,0,0,.6);filter:drop-shadow(0 0 20px rgba(0,0,0,.4))}
.short-card.is-paused::after{transform:translate(-50%,-50%) scale(1)}

/* ===== SHORTS — TABLET (max-width: 900px) ===== */
@media(max-width:900px){
  .shorts-feed{max-width:420px}
  .short-card{border-radius:18px}
  .short-title{font-size:clamp(24px,5vw,32px)}
}

/* ===== SHORTS — MOBILE (max-width: 700px) ===== */
@media(max-width:700px){
  .shorts-feed{max-width:100%;margin-top:30px;gap:16px}
  .short-card{border-radius:14px}
  .short-overlay{padding:22px 18px 28px}
  .short-title{font-size:24px}
  .short-desc{font-size:14px;margin-bottom:14px}
  .short-desc>span{font-size:12px}
  .short-cta{padding:12px 18px;font-size:13px;border-radius:6px}
  .short-progress{top:10px;left:12px;right:12px}
  .short-card::after{font-size:48px}
}

/* ===== SHORTS — VERY SMALL SCREENS (max-width: 380px) ===== */
@media(max-width:380px){
  .shorts-feed{gap:12px}
  .short-card{border-radius:10px}
  .short-overlay{padding:18px 14px 22px;gap:4px}
  .short-title{font-size:21px}
  .short-desc{font-size:13px}
  .short-cta{padding:10px 14px;font-size:12px}
}


