/* Repairs share the original black/gold palette and original Django logo. */
:root{--kuba-header-height:82px}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
body{overflow-x:clip}
html{scroll-padding-top:0}
section{scroll-margin-top:calc(var(--kuba-header-height) + 12px)}
h1,h2,h3,h4{overflow-wrap:anywhere}
.grid>* , .two>* , .three>*{min-width:0}
header.site-header{isolation:isolate}
header.site-header .brand img{width:58px;height:64px;object-fit:contain;display:block;flex-shrink:0}
.kuba-menu-toggle{display:none}
.kuba-language select{margin:0;min-height:44px}
fieldset#kuba-slot-fields{border:0;padding:0;margin:0;min-width:0}
.kuba-license-grid{overflow:hidden;padding:2px}
.kuba-license-card .kuba-license-car{width:100%;height:240px;aspect-ratio:16/9;object-fit:cover;object-position:center;border:1px solid #493e2c}
.kuba-license-card:nth-child(2) .kuba-license-car{object-fit:contain;background:#141718;padding:12px}
.kuba-license-btn{transition:box-shadow .2s ease,filter .2s ease}
.kuba-license-card:hover{border-color:#e5ba68!important}
@media(hover:hover){.btn:hover{box-shadow:0 0 15px #d6a95524}}
#kuba-slogan{max-width:850px}
#kuba-slogan .gold{display:inline}
body.kuba-farsi #kuba-slogan{text-align:right;direction:rtl;margin-left:0;margin-right:0}
body.kuba-farsi :is(h1,h2,h3,h4,p,label,li,summary,figcaption){direction:rtl;text-align:right;unicode-bidi:plaintext}
body.kuba-farsi :is(.review-card,.review-card *){direction:ltr!important;text-align:left!important;unicode-bidi:normal}
body.kuba-farsi #kuba-apt-time{direction:ltr!important;text-align:left!important;unicode-bidi:isolate}
body.kuba-farsi input[type=range]{direction:ltr!important}
.kuba-theory-row span{direction:ltr;unicode-bidi:isolate;flex-shrink:0;font-variant-numeric:tabular-nums}
.kuba-theory-row{flex-wrap:wrap}
.kuba-theory-row strong{flex:1 1 220px}
body.kuba-farsi .kuba-theory-row strong{direction:rtl}
html[lang=fa] .kuba-language select{direction:ltr;text-align:left}
.kuba-whatsapp-button{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));z-index:50;display:flex;align-items:center;gap:8px;padding:13px 17px;border:1px solid #d6a955;border-radius:999px;background:#173b2c;color:#fff;box-shadow:0 5px 24px #0008;font:700 14px system-ui;cursor:pointer;text-decoration:none}
.kuba-whatsapp-button svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.kuba-whatsapp-button[aria-disabled=true]{background:#222b25}
#kuba-whatsapp-note{position:fixed;bottom:80px;right:18px;z-index:51;max-width:min(300px,calc(100vw - 36px));padding:14px;border:1px solid #d6a955;border-radius:10px;background:#141718;color:#fff;box-shadow:0 5px 25px #0008}
.footer,body>footer{padding-bottom:105px}
.btn:focus-visible,.kuba-whatsapp-button:focus-visible,.kuba-menu-toggle:focus-visible,nav a:focus-visible{outline:3px solid #f5d58c;outline-offset:4px}
button:disabled{opacity:.65;cursor:not-allowed}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(max-width:850px){
 header.site-header{display:grid!important;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;padding:8px 16px;text-align:left;align-items:center;position:sticky;top:0}
 header.site-header .brand{justify-content:flex-start;margin:0;min-width:0}
 header.site-header .brand img{height:52px;width:47px}
 header.site-header .brand span{display:none}
 header.site-header .kuba-language{grid-column:2;grid-row:1;margin:0}
 header.site-header .kuba-language select{font-size:13px;max-width:128px;padding:8px}
 .kuba-menu-toggle{display:flex;grid-column:3;grid-row:1;align-items:center;justify-content:center;border:1px solid #d6a955;border-radius:8px;width:44px;height:44px;background:#141718;color:#edcb85;font:24px system-ui;cursor:pointer}
 header.site-header nav{display:none;margin:0;grid-column:1/-1;grid-row:2;gap:0;font-size:1rem;width:100%}
 header.site-header nav.is-open{display:grid;grid-template-columns:1fr 1fr;padding:6px 0}
 header.site-header nav a{min-height:46px;padding:10px;border-radius:5px;justify-content:flex-start}
 header.site-header nav a:hover{background:#d6a95516}
 section{scroll-margin-top:calc(var(--kuba-header-height) + 10px)}
 .hero{min-height:640px}
 .hero h1{font-size:clamp(2.35rem,8vw,3.75rem);overflow-wrap:anywhere}
 .kuba-license-card .kuba-license-car{height:220px;max-height:none}
}
@media(max-width:600px){
 section{padding:48px 18px}
 .hero{min-height:max(630px,calc(100svh - 75px));padding:38px 19px 44px;align-items:flex-end}
 .hero::before{background-size:auto 85%;background-position:58% top}
 .hero::after{background:linear-gradient(180deg,#090b0c15 0%,#090b0c65 32%,#090b0ce8 65%,#090b0c 100%)}
 .hero .wrap{margin:0}
 .hero h1{font-size:clamp(2.35rem,10vw,3.5rem);line-height:1.12}
 .hero p{font-size:.94rem}
 .hero .actions{grid-template-columns:1fr;gap:10px}
 .hero .actions .btn{min-height:46px;font-size:.94rem}
 .kuba-theory-row{flex-direction:column;align-items:flex-start}
 .kuba-theory-row strong{flex:initial;max-width:100%}
 h2{font-size:clamp(1.8rem,7.8vw,2.6rem)}
 .kuba-whatsapp-button{padding:12px;right:14px;bottom:14px}
 .kuba-whatsapp-button span{display:none}
 .kuba-whatsapp-button svg{width:27px;height:27px}
 .kuba-contact-card button[type=submit]{margin-bottom:12px}
}
@media(prefers-reduced-motion:reduce){
 *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
 .kuba-scroll-reveal,.kuba-scroll-reveal.kuba-waiting{opacity:1!important;transform:none!important}
}

@media(max-width:600px){.hero{min-height:calc(100svh - var(--kuba-header-height) - 42px);padding-top:26px;padding-bottom:32px}.hero .actions{margin:16px 0}.hero h1{margin-bottom:15px}.hero .eyebrow{font-size:.65rem}}
body>div[role=note]{font-size:12px;line-height:1.4;padding:8px 12px!important}
.kuba-language select{border:1px solid #d6a955;background:#161616;color:#f4dfb3;border-radius:8px;padding:8px;font:600 14px system-ui}
.gallery-header .kuba-language{margin-left:auto}
.hero::before,.hero.hero-running::before{animation-duration:2.4s}
.hero .wrap,.hero.hero-running .wrap{animation-duration:1.1s;animation-delay:.75s}

@media(max-width:600px){.hero .wrap>.eyebrow:last-child{max-width:calc(100% - 64px);min-height:36px}.kuba-contact-card input,.kuba-contact-card textarea,.kuba-contact-card select{scroll-margin-bottom:95px}}
@media(hover:none){.review-card:hover{transform:none;box-shadow:none}}
.review-original-link{display:block;color:#e5ba68;text-decoration:underline;font-size:.8rem;margin-top:12px}
body.kuba-farsi .review-original-link{direction:rtl!important;text-align:right!important}
/* Reviews arrive one at a time, with a short golden impact and a calm resting state. */
.reviews-track{padding:18px 5px 24px;scroll-padding-inline:5px;isolation:isolate}
.review-card{--review-arrival-x:68px;--review-arrival-y:-34px;--review-arrival-tilt:-3deg}
.review-card.kuba-review-pending{opacity:0}
.review-card.kuba-review-enter{animation:kubaReviewArrival 1100ms cubic-bezier(.2,.7,.2,1) var(--review-delay,0ms) both;will-change:transform,opacity}
@keyframes kubaReviewArrival{
  0%{opacity:0;transform:translate3d(var(--review-arrival-x),var(--review-arrival-y),0) rotate(var(--review-arrival-tilt)) scale(.97);box-shadow:none}
  46%{opacity:1;transform:translate3d(0,5px,0) rotate(.65deg) scale(1.015);border-color:#f6d690;box-shadow:0 0 0 1px #e8bd6e80,0 0 25px #d6a95555,0 16px 25px #0005}
  68%{opacity:1;transform:translate3d(0,-2px,0) rotate(-.3deg) scale(.995);border-color:#d6a955;box-shadow:0 0 15px #d6a95525}
  100%{opacity:1;transform:translate3d(0,0,0) rotate(0) scale(1);border-color:#6e5835;box-shadow:none}
}
@media(max-width:600px){.review-card{--review-arrival-x:34px;--review-arrival-y:-22px;--review-arrival-tilt:-2deg}}
@media(prefers-reduced-motion:reduce){.review-card.kuba-review-pending{opacity:1}.review-card.kuba-review-enter{animation:none!important;will-change:auto}}

.reviews-section{scroll-margin-top:calc(var(--kuba-header-height) + 14px)}

.kuba-calc-card{scroll-margin-top:calc(var(--kuba-header-height) + 16px)}
.kuba-calc-prompt{color:#e9d4ad;background:#d6a95510;border-left:3px solid #d6a955;padding:13px 15px;margin:20px 0 6px;line-height:1.55}
.kuba-example-details{margin:22px 0;padding:0;border:1px solid #665032;border-radius:12px;background:#141718}
.kuba-example-details>summary{padding:16px 20px;color:#e5ba68;min-height:48px}
.kuba-example-details[open]>summary{border-bottom:1px solid #665032}
.kuba-example-details .kuba-examples{margin:18px}
.kuba-example-details .kuba-examples-note{padding:0 18px 16px;margin:0}
body.kuba-farsi .kuba-calc-prompt{border-left:0;border-right:3px solid #d6a955}

/* Reveal each section when it enters the viewport; retain a readable final state. */
.kuba-scroll-reveal{transition-duration:1.1s;transition-delay:var(--kuba-reveal-delay,0ms)}

.kuba-license-card:nth-child(2) .kuba-license-car.kuba-license-be-photo{height:auto;max-height:none;aspect-ratio:16/9;object-fit:cover;object-position:center top;padding:0}

/* Keep the copy on the left in every language; RTL applies inside that column. */
.hero .kuba-hero-copy{width:48%;max-width:540px;margin-left:0;margin-right:auto;direction:ltr}
.hero #kuba-slogan{max-width:100%;margin-left:0;margin-right:0;font-size:clamp(2.35rem,4.5vw,4rem)}
.hero::before{left:50%;background-size:contain;background-position:center right}
.hero::after{background:linear-gradient(90deg,#090b0c 0%,#090b0c 46%,#090b0c50 56%,#090b0c00 78%)}
body.kuba-farsi .hero .kuba-hero-copy :is(h1,p,.eyebrow){direction:rtl;text-align:right;unicode-bidi:plaintext}
@media(max-width:850px){
 .hero{min-height:0;align-items:flex-start;padding:calc(56.25vw + 24px) 19px 36px}
 .hero::before{inset:0 0 auto;width:100%;height:56.25vw;background-size:contain;background-position:center top}
 .hero::after{inset:0 0 auto;height:calc(56.25vw + 1px);background:linear-gradient(180deg,#090b0c00 65%,#090b0c 100%)}
 .hero .wrap{margin:0;width:100%}
 .hero .kuba-hero-copy{width:100%;max-width:600px}
 .hero #kuba-slogan{font-size:clamp(2.2rem,8vw,3.5rem)}
}

/* Keep Django’s ears and face inside the existing photo frame. */
.kuba-about-photo img{object-position:center 20%}

/* Persian is a visible invitation, independent of the language picker. */
.kuba-farsi-link{display:inline-flex;justify-content:center;align-items:center;flex-shrink:0;min-width:72px;min-height:44px;padding:8px 17px;border:1px solid #edcc8b;border-radius:8px;background:#d6a955;color:#17120a;font:750 1rem/1.5 system-ui,Arial,sans-serif;white-space:nowrap;text-decoration:none;box-shadow:0 0 15px #d6a95525;direction:rtl}
.kuba-farsi-link:hover{background:#e5ba68;box-shadow:0 0 21px #d6a95545}
.kuba-farsi-link:focus-visible{outline:3px solid #f5d58c;outline-offset:4px}
@media(max-width:850px){header.site-header{grid-template-columns:minmax(42px,1fr) auto auto auto;gap:8px;padding-left:12px;padding-right:12px}header.site-header .kuba-language select{max-width:105px}header.site-header .kuba-farsi-link{grid-column:4;grid-row:1;min-width:64px;padding:8px 13px}}
@media(max-width:360px){header.site-header{gap:6px}header.site-header .kuba-language select{max-width:92px;padding:8px 5px}header.site-header .kuba-farsi-link{min-width:58px;padding:8px 10px}}
