@font-face{font-family:Vazirmatn;src:url('assets/Vazirmatn.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{font-family:Vazirmatn,sans-serif;color:#f4f1ea;background:#f5f3ee;--gold:#d6b66c;--navy:#081923;--muted:#b8bfc1}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:5px;border-radius:4px}a:hover{color:var(--gold)}.symbols{position:absolute;width:0;height:0}.icon{width:22px;height:22px;flex-shrink:0;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round;fill:none;color:var(--gold)}.scene{height:200svh}.stage{height:100svh;position:sticky;top:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;overflow:clip}.perspective{width:min(1440px,94vw,calc((100svh - 100px)*16/9));aspect-ratio:16/9;perspective:1600px}.card{position:relative;width:100%;height:100%;transform-style:preserve-3d;will-change:transform}.face{position:absolute;inset:0;border:1px solid #b5995f;border-radius:32px;overflow:hidden;background:var(--navy);backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:0 24px 48px -24px #16222b66,0 5px 14px #16222b10}.hero{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center}.front-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,13,23,.55),transparent 60%)}.front-brand{position:absolute;left:4%;top:12%;width:39%;text-align:center}.logo-mark{display:block;width:145px;aspect-ratio:1.4;overflow:hidden;margin:0 auto 20px;mix-blend-mode:screen}.logo-mark img{display:block;width:100%;height:auto;filter:invert(1) grayscale(1) sepia(.7) saturate(1.5);mix-blend-mode:screen}h1,h2{font-size:clamp(25px,3vw,43px);font-weight:800;color:var(--gold);margin:0;line-height:1.6;letter-spacing:-1px}.subtitle{display:flex;align-items:center;justify-content:center;gap:14px;margin:5px 0 0;font-size:clamp(14px,1.6vw,20px);font-weight:500}.subtitle:before,.subtitle:after{content:'';width:32px;height:1px;background:var(--gold);opacity:.7}.tagline{color:#d1d4d4;font-size:clamp(12px,1.2vw,16px);margin:22px 0 0}.contact-strip{position:absolute;bottom:0;inset-inline:0;display:grid;grid-template-columns:.85fr .85fr 1.25fr 1.5fr;align-items:center;background:rgba(5,17,26,.9);border-top:1px solid #d6b66c40;padding:25px 3%;gap:22px;min-height:112px}.contact{display:flex;gap:12px;align-items:flex-start;min-width:0;font-size:14px}.contact+.contact{border-inline-start:1px solid #d6b66c30;padding-inline-start:22px}.contact .icon{margin-top:4px}.label{display:block;color:var(--muted);font-size:12px;font-weight:400;margin-bottom:5px}.contact bdi{display:block;direction:ltr;white-space:nowrap}.phone bdi,.ivr bdi{font-size:17px}.email bdi{font-family:Vazirmatn,sans-serif;font-size:13px}address{font-style:normal;font-size:13px;line-height:1.9}.back{transform:rotateY(180deg);display:flex;flex-direction:column}.back-main{flex:1;min-height:0;display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:4.5% 6%;gap:7%}.back-brand{text-align:center}.back-brand .logo-mark{width:145px}.back-brand h2{font-size:clamp(25px,2.6vw,37px)}.description{font-size:16px;color:#c8cdce;line-height:2.1;max-width:370px;margin:25px auto 0}.back-info{border-inline-start:1px solid #d6b66c38;padding-inline-start:13%;font-size:16px}.back-info h3{font-size:14px;font-weight:500;color:var(--gold);margin:0 0 16px}.management{display:grid;gap:12px}.person{display:flex;justify-content:space-between;gap:12px;align-items:center}.person small{color:var(--muted);font-size:12px}.detail{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:44px}.detail .label{margin:0;flex-shrink:0}.detail a{display:inline-flex;align-items:center;min-height:44px;font-size:14px}.mobile-numbers{margin:16px 0;padding-bottom:12px;border-bottom:1px solid #d6b66c25}.mobile-numbers>div{display:flex;gap:20px}.actions{display:flex;gap:12px;margin-top:18px}.button{display:flex;justify-content:center;align-items:center;gap:16px;min-height:44px;padding:8px 18px;border:1px solid #d6b66c80;border-radius:8px;font-size:14px}.primary{background:var(--gold);color:#081923}.primary .icon{color:inherit}.primary:hover{background:#e3c889;color:#081923}.services{list-style:none;display:flex;justify-content:space-evenly;align-items:center;gap:12px;margin:0 4%;padding:25px 0;border-top:1px solid #d6b66c40}.services li{display:flex;gap:12px;align-items:center;font-size:14px}.controls{display:flex;align-items:center;justify-content:center;gap:24px;color:#66645e;min-height:44px}.hint{font-size:12px}.controls button{border:0;background:none;color:#44433d;min-width:100px;min-height:44px;display:flex;align-items:center;justify-content:center;gap:9px;cursor:pointer;font-size:13px}.controls button .icon{width:17px;height:17px;color:#8c7649}.progress{width:45px;height:2px;background:#ddd7cc;direction:ltr}.progress i{display:block;transform-origin:left;width:100%;height:100%;background:#a48a50;transform:scaleX(var(--progress,0))}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:761px) and (max-width:1100px){.front-brand{top:8%}.logo-mark,.back-brand .logo-mark{width:100px;margin-bottom:12px}.contact-strip{padding:15px 2%;gap:12px;min-height:100px}.contact{gap:8px}.contact+.contact{padding-inline-start:12px}.contact .icon{width:18px}.phone bdi,.ivr bdi{font-size:14px}.email bdi{font-size:11px}.back-main{padding:3% 4%;gap:4%}.back-info{padding-inline-start:8%}.description{font-size:14px;margin-top:12px}.mobile-numbers{margin:6px 0}.mobile-numbers>div{gap:8px}.detail a{font-size:12px}.services{padding:18px 0}.services li{font-size:12px;gap:6px}.actions{margin-top:8px;gap:8px}.button{padding:6px 10px;font-size:12px}}
@media(max-width:760px){.stage{gap:8px}.perspective{width:calc(100vw - 24px);max-width:440px;aspect-ratio:9/16;height:auto}.face{border-radius:26px}.hero{object-position:75% center}.front-shade{background:linear-gradient(180deg,rgba(3,13,23,.8),transparent 53%)}.front-brand{top:5%;left:5%;width:90%}.logo-mark{width:82px;margin-bottom:10px}h1,h2{font-size:28px}.subtitle{font-size:14px}.tagline{font-size:12px;margin-top:12px}.contact-strip{grid-template-columns:1fr 1fr;padding:16px 20px;gap:10px 18px;min-height:0;background:rgba(5,17,26,.94)}.contact{gap:10px;min-height:44px}.contact+.contact{border:0;padding:0}.contact .icon{width:19px;height:19px}.contact .label{font-size:11px;margin-bottom:2px}.phone bdi,.ivr bdi{font-size:15px}.email,.address{grid-column:1/-1}.email bdi{font-size:13px}.email{align-items:center}.email>span{display:flex;align-items:center;gap:14px}.address{padding-top:8px!important;border-top:1px solid #d6b66c25!important}address{font-size:12px;line-height:1.8}.back-main{display:flex;flex-direction:column;gap:18px;padding:24px 24px 12px;justify-content:center}.back-brand .logo-mark{width:62px;margin-bottom:4px}.back-brand h2{font-size:25px}.back-brand .subtitle{font-size:12px}.description{font-size:13px;line-height:1.9;margin:12px auto 0;max-width:310px}.back-info{width:100%;padding:16px 0 0;border-inline-start:0;border-top:1px solid #d6b66c30;font-size:14px}.back-info h3{margin:0 0 8px;font-size:13px}.management{gap:8px}.person small{font-size:11px}.mobile-numbers{margin:5px 0;padding-bottom:4px}.mobile-numbers>div{gap:15px}.detail a{font-size:12px}.actions{gap:10px;margin-top:10px}.button{flex:1;padding:7px 10px;font-size:12px;gap:10px}.services{flex-wrap:wrap;gap:12px 16px;padding:15px 0;margin:0 20px}.services li{font-size:11px;gap:6px}.services .icon{width:17px;height:17px}.controls{gap:12px}.hint{font-size:11px}.progress{width:24px}.controls button{font-size:12px;min-width:88px}}
@media(max-width:760px) and (max-height:760px){.perspective{max-width:calc((100svh - 64px)*9/16);min-width:296px}.back-main{padding:16px 18px 8px;gap:10px}.back-brand .logo-mark{width:45px}.back-brand h2{font-size:22px}.description{margin-top:6px;font-size:12px}.back-info{padding-top:10px}.services{padding:10px 0;gap:8px 12px}.front-brand{top:4%}.front-brand .logo-mark{width:65px}.front-brand h1{font-size:25px}.tagline{margin-top:8px}}
@media(max-height:590px){.scene{height:auto;min-height:100svh}.stage{position:relative;height:auto;min-height:100svh;padding:16px 0;overflow:hidden}.perspective{width:calc(100vw - 24px);max-width:900px;min-width:0;aspect-ratio:auto;height:640px}.back-main{min-height:0}.hint{display:none}}
@media(prefers-reduced-motion:reduce){.card{transform:none!important;will-change:auto}.face{transform:none!important}.face[aria-hidden=true]{visibility:hidden}.face[aria-hidden=false]{visibility:visible}}

.logo-mark{aspect-ratio:1.54}.contact-strip>a{min-height:44px;align-items:center}


/* Light positions use the original 1672 × 941 image, not viewport percentages. */
.hero-effects{position:absolute;inset:0;overflow:hidden;pointer-events:none;mix-blend-mode:screen}
.light-plane{position:absolute;top:0;left:0;width:1672px;height:941px;transform-origin:0 0;opacity:0;direction:ltr}
.headlight,.road-reflection{position:absolute;display:block;pointer-events:none}
.headlight{background:radial-gradient(ellipse,rgba(255,242,208,.92) 0%,rgba(255,213,145,.62) 23%,rgba(248,177,89,.18) 50%,transparent 73%);filter:blur(3px);border-radius:45%}
.headlight:after{content:'';position:absolute;inset:26% 25%;border-radius:35%;background:rgba(255,246,223,.65);filter:blur(2px)}
.headlight-near{left:970px;top:645px;width:84px;height:55px;transform:rotate(-12deg) skewX(-12deg)}
.headlight-far{left:824px;top:648px;width:39px;height:52px;transform:rotate(-9deg) skewX(10deg);opacity:.75}
.road-reflection{background:radial-gradient(ellipse,rgba(255,210,144,.38),rgba(247,178,87,.12) 35%,transparent 70%);filter:blur(9px);opacity:.36;transform:rotate(18deg) skewX(-22deg)}
.reflection-near{left:901px;top:768px;width:165px;height:121px}
.reflection-far{left:779px;top:738px;width:110px;height:115px}
.intro-playing .light-plane{animation:headlight-intro 1450ms linear both}
@keyframes headlight-intro{0%,55.1724%{opacity:0;animation-timing-function:cubic-bezier(.22,.61,.36,1)}79.3103%{opacity:.42;animation-timing-function:ease-out}100%{opacity:0}}
.face[aria-hidden=true]{pointer-events:none;visibility:hidden}
#sound-button{min-width:80px;gap:7px}
#sound-button[aria-pressed=false] .sound-waves{display:none}
#sound-button[aria-pressed=true] .sound-slash{display:none}
@media(max-width:760px){.controls{width:calc(100% - 24px);max-width:440px;display:grid;grid-template-columns:1fr auto auto;gap:0 10px}.controls .hint{grid-column:1/-1;text-align:center;line-height:1.5}.controls .progress{justify-self:end}.controls button{min-width:80px}.stage{gap:4px}.perspective{max-width:min(440px,calc((100svh - 88px)*9/16))}}
@media(max-height:590px){.perspective{max-width:900px}.controls .hint{display:none}}
@media(prefers-reduced-motion:reduce){.intro-playing .light-plane{animation:none;opacity:0}}
/* CSS custom properties inherit through the SVG use shadow tree. */
.sound-waves{opacity:var(--sound-waves,0)}
.sound-slash{opacity:var(--sound-slash,1)}
#sound-button[aria-pressed=true]{--sound-waves:1;--sound-slash:0}
.front-portal{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:44px;margin-top:18px;padding:8px 22px;border-radius:8px;background:var(--gold);color:#081923;font-size:14px;font-weight:650;box-shadow:0 8px 24px rgba(0,0,0,.2)}
.front-portal .icon{width:18px;height:18px;color:inherit}.front-portal:hover{background:#e3c889;color:#081923}
.truck-horn-hit{position:absolute;z-index:2;left:48%;top:28%;width:45%;height:52%;border:0;background:transparent;cursor:pointer;color:transparent}
.truck-horn-hit:focus-visible{outline:2px solid rgba(214,182,108,.9);outline-offset:-8px;border-radius:42%}
.front-brand,.contact-strip{z-index:3}.front-brand{pointer-events:none}.front-brand a{pointer-events:auto}
.truck-horn-hit{clip-path:polygon(0 75%,4% 30%,35% 0,100% 24%,100% 88%,83% 100%,5% 100%)}
[hidden]{display:none!important}.single-scene .scene{height:100svh}
.contact-strip{grid-template-columns:var(--contact-columns,.85fr .85fr 1.25fr 1.5fr)}
@media(max-width:760px){.contact-strip{grid-template-columns:1fr 1fr}.front-brand{top:3%}.front-brand .logo-mark{width:54px;margin-bottom:5px}.front-brand h1{font-size:24px}.front-brand .tagline{margin-top:7px}}
@media(max-width:760px){.front-portal{margin-top:10px;padding:6px 18px;font-size:12px}.truck-horn-hit{left:4%;top:28%;width:92%;height:34%}}
/* Reserve the lower contact area without animating or translating the truck. */
@media(max-width:760px){.hero{height:calc(100% - 112px)}}
.no-info-icons .contact .icon,.no-info-icons .services .icon{display:none}
.custom-logo-mark,.custom-logo-mark img{mix-blend-mode:normal}
.custom-logo-mark img{filter:none;height:100%;object-fit:contain}
.back-single-column .back-main{grid-template-columns:1fr}
.back-single-column .back-info{border:0;padding-inline-start:0;max-width:560px;width:100%;margin:auto}
.back-main{overflow:auto;overscroll-behavior:contain}
.detail a,.detail bdi{min-width:0;overflow-wrap:anywhere}
.no-contact-strip .hero{height:100%}
.front-brand{z-index:auto}.front-portal{position:relative;z-index:4}

/* Shared video/still geometry prevents a jump at the end of the arrival. */
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;visibility:hidden;pointer-events:none}
.video-active .hero-video{visibility:visible}.video-active .hero{visibility:hidden}
.front:not(.media-ready) .hero-video{visibility:visible}
.video-active .hero-effects,.video-active .truck-horn-hit{visibility:hidden}
.intro-locked{overflow:hidden}.intro-locked .controls .hint,.intro-locked .controls .progress{visibility:hidden}
.controls button:disabled{opacity:.4;cursor:default}
.skip-video{position:absolute;z-index:5;top:16px;right:20px;min-height:44px;padding:6px 12px;color:#ece7db;background:#081923a6;border:1px solid #d6b66c45;border-radius:8px;font-size:12px;cursor:pointer}
.front-actions{display:flex;justify-content:center;gap:10px;margin-top:18px;pointer-events:auto}
.front-actions a{position:relative;z-index:4;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;margin:0;padding:9px 16px;border-radius:8px;background:var(--gold);color:var(--navy);font-size:14px;font-weight:650;box-shadow:0 8px 24px #0003}
.front-actions a:hover{background:#e3c889}.front-actions .icon{width:18px;height:18px;color:inherit}
.truck-horn-hit{touch-action:pan-y;user-select:none;-webkit-user-select:none}
.logo-mark{position:relative}
.logo-mark:after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 42%,#fff3 47%,#fff 50%,#fff3 53%,transparent 58%);background-size:300% 100%;opacity:0;mix-blend-mode:screen;pointer-events:none;mask-image:linear-gradient(#fff,#fff),url('06_company_logo.webp');mask-mode:alpha,luminance;mask-size:100% 100%,100% auto;mask-repeat:no-repeat;mask-composite:exclude;animation:logo-sheen 6s ease-in-out infinite}
@keyframes logo-sheen{0%,80%{background-position:100% 0;opacity:0}84%,98%{opacity:.7}100%{background-position:0% 0;opacity:0}}
.custom-logo-mark:after{mask-image:var(--custom-logo);mask-mode:alpha;mask-size:contain;mask-position:center}
body[data-logo-sheen="0"] .logo-mark:after{display:none}
.flasher{position:absolute;display:block;width:34px;height:20px;filter:blur(2px);background:radial-gradient(ellipse,#ffca78b3,#e49b3044 40%,transparent 72%);transform:rotate(-9deg)}
.flasher-near{left:995px;top:700px}.flasher-far{left:832px;top:698px;width:22px;height:16px}
.media-ready .light-plane{animation:running-lights 5s ease-in-out infinite}
.media-ready.intro-playing .light-plane{animation:headlight-intro 1450ms linear both}
@keyframes running-lights{0%,84%,100%{opacity:0}90%{opacity:.4}94%{opacity:.2}97%{opacity:.32}}
body[data-recurring-lights="0"] .media-ready:not(.intro-playing) .light-plane{animation:none;opacity:0}
body[data-flashers="0"] .flasher{display:none}
#sound-button[data-audio-pending="true"]{text-decoration:underline;text-decoration-style:dotted;text-underline-offset:5px}
@media(max-width:1100px) and (min-width:761px){.front-actions{gap:6px;margin-top:10px}.front-actions a{padding:7px 10px;font-size:12px}}
@media(max-width:760px){
 .hero,.hero-video,.no-contact-strip .hero{inset:auto 0;top:25%;width:100%;height:auto;aspect-ratio:1672/941;object-position:center;object-fit:cover}
 .front-shade{background:linear-gradient(180deg,#081923 0%,#08192355 20%,transparent 40%,transparent 60%,#081923 77%)}
 .front-brand{top:3%;left:5%;width:90%;position:absolute;inset-block-end:0;pointer-events:none}
 .front-actions{position:absolute;bottom:max(14px,env(safe-area-inset-bottom));left:0;right:0;margin:0;gap:10px;z-index:4}
 .front-actions a{flex:1;min-width:0;min-height:48px;padding:8px 10px;font-size:13px;gap:8px}
 .contact-strip{bottom:76px;padding:10px 18px;gap:5px 12px}
 .contact-strip .contact{min-height:36px}.contact-strip>a{min-height:36px}
 .contact-strip .address{padding-top:5px!important}
 .skip-video{top:auto;bottom:calc(52% - 16px);right:14px;min-height:36px;font-size:11px;padding:4px 10px}
 .no-front-actions .contact-strip{bottom:0}
}
@media(prefers-reduced-motion:reduce){.logo-mark:after{animation:none;display:none}.media-ready .light-plane,.media-ready.intro-playing .light-plane{animation:none;opacity:0}}
