/* ═══════════════════════════════════════════════
   AUTOMOBILE DÜDINGEN — MODERN REDESIGN
   Design: Swiss Precision × Automotive Edge
   ═══════════════════════════════════════════════ */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;0,9..40,800;1,9..40,400&display=swap');

:root {
  --black: #080808;
  --dark: #111111;
  --dark-2: #1a1a1a;
  --dark-3: #222222;
  --gold: #c9a54e;
  --gold-dim: rgba(201,165,78,0.12);
  --gold-glow: rgba(201,165,78,0.25);
  --cream: #f8f5ef;
  --cream-2: #eee9e0;
  --white: #ffffff;
  --gray-1: #999;
  --gray-2: #666;
  --gray-3: #444;
  --gray-4: #333;
  --text: #e8e8e8;
  --text-dim: rgba(255,255,255,0.5);
  --text-dimmer: rgba(255,255,255,0.3);
  --border: rgba(255,255,255,0.08);
  --border-2: rgba(255,255,255,0.12);
  --serif: 'DM Sans', system-ui, sans-serif;
  --sans: 'DM Sans', system-ui, sans-serif;
  --ease: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-out: cubic-bezier(0.0, 0.0, 0.2, 1);
}

/* ─── RESET ─── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:80px;-webkit-text-size-adjust:100%}
body{font-family:var(--sans);color:var(--text);background:var(--black);line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
button{font-family:var(--sans);cursor:pointer}
::selection{background:var(--gold);color:var(--black)}

/* ─── UTILITIES ─── */
.container{max-width:1240px;margin:0 auto;padding:0 32px}
@media(max-width:480px){.container{padding:0 20px}}

/* ═══════════════════════════════════
   NAV
   ═══════════════════════════════════ */
.nav{position:fixed;top:0;left:0;width:100%;z-index:1000;transition:all .4s var(--ease)}
.nav::before{content:'';position:absolute;inset:0;background:rgba(8,8,8,0.7);backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border-bottom:1px solid var(--border);opacity:0;transition:opacity .4s}
.nav.scrolled::before{opacity:1}
.nav__inner{position:relative;z-index:2;max-width:1240px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:0 32px;height:80px}
.nav__logo{display:flex;flex-direction:column;gap:1px}
.nav__logo-main{font-family:var(--serif);font-size:20px;font-weight:700;color:var(--white);letter-spacing:.5px;line-height:1.1}
.nav__logo-sub{font-size:10px;font-weight:600;color:var(--gold);letter-spacing:4px;text-transform:uppercase;line-height:1}
.nav__links{display:flex;align-items:center;gap:8px;list-style:none}
.nav__link{padding:8px 18px;font-size:13px;font-weight:600;color:var(--text-dim);letter-spacing:.5px;border-radius:100px;transition:all .3s var(--ease)}
.nav__link:hover,.nav__link.active{color:var(--white);background:rgba(255,255,255,0.06)}
.nav__cta-link{padding:10px 28px;font-size:12px;font-weight:800;color:var(--black)!important;background:var(--gold);border-radius:100px;letter-spacing:1px;text-transform:uppercase;transition:all .3s var(--ease)}
.nav__cta-link:hover{background:var(--white);transform:translateY(-1px);box-shadow:0 8px 30px rgba(201,165,78,0.3)}
.burger{display:none;background:none;border:none;width:44px;height:44px;padding:10px;flex-direction:column;justify-content:center;gap:6px}
.burger span{display:block;width:100%;height:2px;background:var(--white);border-radius:2px;transition:all .3s var(--ease);transform-origin:center}
.burger.active span:first-child{transform:rotate(45deg) translate(3px,3px)}
.burger.active span:nth-child(2){opacity:0;transform:scaleX(0)}
.burger.active span:last-child{transform:rotate(-45deg) translate(3px,-3px)}

/* ═══════════════════════════════════
   HERO – HOME
   ═══════════════════════════════════ */
.hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden}
.hero__bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.18;transform:scale(1.05)}
.hero__gradient{position:absolute;inset:0;background:
  radial-gradient(ellipse 80% 60% at 20% 50%, rgba(201,165,78,0.06) 0%, transparent 70%),
  radial-gradient(ellipse 60% 80% at 80% 80%, rgba(201,165,78,0.04) 0%, transparent 60%),
  linear-gradient(180deg, rgba(8,8,8,0.3) 0%, rgba(8,8,8,0.6) 100%)}
.hero__grid-lines{position:absolute;inset:0;opacity:.04;
  background-image:
    linear-gradient(90deg, var(--white) 1px, transparent 1px),
    linear-gradient(0deg, var(--white) 1px, transparent 1px);
  background-size:120px 120px}
.hero__content{position:relative;z-index:2;padding:140px 0 100px;width:100%}
.hero__tag{display:inline-flex;align-items:center;gap:10px;margin-bottom:32px;opacity:0;animation:fadeUp .8s var(--ease) .1s forwards}
.hero__tag-dot{width:8px;height:8px;background:var(--gold);border-radius:50%;animation:pulse-dot 2s infinite}
.hero__tag-text{font-size:12px;font-weight:700;color:var(--gold);letter-spacing:4px;text-transform:uppercase}
@keyframes pulse-dot{0%,100%{box-shadow:0 0 0 0 rgba(201,165,78,0.4)}50%{box-shadow:0 0 0 8px rgba(201,165,78,0)}}

.hero__title{font-family:var(--serif);font-size:clamp(52px,8vw,110px);font-weight:900;line-height:.95;letter-spacing:-2px;color:var(--white);margin-bottom:28px;opacity:0;animation:fadeUp .8s var(--ease) .2s forwards}
.hero__title em{font-style:italic;font-weight:400;color:var(--gold)}
.hero__desc{font-size:clamp(16px,1.6vw,19px);color:var(--text-dim);max-width:480px;line-height:1.8;font-weight:400;margin-bottom:44px;opacity:0;animation:fadeUp .8s var(--ease) .35s forwards}
.hero__btns{display:flex;gap:14px;flex-wrap:wrap;opacity:0;animation:fadeUp .8s var(--ease) .5s forwards}
.hero__stats{display:flex;gap:56px;margin-top:80px;opacity:0;animation:fadeUp .8s var(--ease) .65s forwards}
.hero__stat{position:relative;padding-left:20px}
.hero__stat::before{content:'';position:absolute;left:0;top:4px;bottom:4px;width:2px;background:linear-gradient(180deg,var(--gold),transparent)}
.hero__stat-val{font-family:var(--serif);font-size:40px;font-weight:900;color:var(--white);line-height:1}
.hero__stat-label{font-size:12px;color:var(--text-dimmer);margin-top:4px;font-weight:600;letter-spacing:1px;text-transform:uppercase}

/* ═══════════════════════════════════
   PAGE HERO – Subpages
   ═══════════════════════════════════ */
.page-hero{position:relative;padding:160px 0 80px;overflow:hidden}
.page-hero__gradient{position:absolute;inset:0;background:radial-gradient(ellipse 70% 50% at 30% 60%, rgba(201,165,78,0.05) 0%, transparent 70%)}
.page-hero__grid-lines{position:absolute;inset:0;opacity:.03;background-image:linear-gradient(90deg,var(--white) 1px,transparent 1px),linear-gradient(0deg,var(--white) 1px,transparent 1px);background-size:120px 120px}
.page-hero__inner{position:relative;z-index:2}
.page-hero__tag{font-size:12px;font-weight:700;color:var(--gold);letter-spacing:4px;text-transform:uppercase;margin-bottom:16px}
.page-hero__title{font-family:var(--serif);font-size:clamp(40px,6vw,72px);font-weight:900;line-height:.95;letter-spacing:-1px;color:var(--white);margin-bottom:20px}
.page-hero__title em{font-style:italic;font-weight:400;color:var(--gold)}
.page-hero__desc{font-size:17px;color:var(--text-dim);max-width:520px;line-height:1.8}
.page-hero__crumb{margin-top:36px;font-size:13px;color:var(--text-dimmer)}
.page-hero__crumb a{color:var(--gold);transition:color .3s}
.page-hero__crumb a:hover{color:var(--white)}

/* ═══════════════════════════════════
   BUTTONS
   ═══════════════════════════════════ */
.btn{display:inline-flex;align-items:center;gap:10px;padding:16px 36px;border-radius:100px;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:1.5px;border:none;transition:all .35s var(--ease);font-family:var(--sans)}
.btn--gold{background:var(--gold);color:var(--black);box-shadow:0 4px 25px rgba(201,165,78,0.25)}
.btn--gold:hover{background:var(--white);transform:translateY(-2px);box-shadow:0 12px 40px rgba(201,165,78,0.3)}
.btn--ghost{background:transparent;color:var(--white);border:1.5px solid var(--border-2)}
.btn--ghost:hover{border-color:var(--gold);color:var(--gold)}
.btn--dark{background:var(--dark);color:var(--white);border:1.5px solid var(--border)}
.btn--dark:hover{background:var(--dark-2);border-color:var(--gold)}
.btn svg{width:16px;height:16px;fill:currentColor}

/* ═══════════════════════════════════
   MARQUEE TRUST BAR
   ═══════════════════════════════════ */
.marquee{border-top:1px solid var(--border);border-bottom:1px solid var(--border);overflow:hidden;white-space:nowrap;background:var(--dark)}
.marquee__track{display:inline-flex;animation:marquee 25s linear infinite}
.marquee__item{display:inline-flex;align-items:center;gap:12px;padding:18px 48px;color:var(--text-dim);font-size:13px;font-weight:600;letter-spacing:.5px}
.marquee__item svg{width:18px;height:18px;fill:var(--gold);flex-shrink:0}
@keyframes marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* ═══════════════════════════════════
   SECTIONS
   ═══════════════════════════════════ */
.section{padding:120px 0}
.section--cream{background:var(--cream);color:var(--dark)}
.section--dark{background:var(--dark)}
.section--black{background:var(--black)}
.section__label{font-size:11px;font-weight:800;color:var(--gold);letter-spacing:5px;text-transform:uppercase;margin-bottom:16px}
.section--cream .section__label{color:#8a7635}
.section__title{font-family:var(--serif);font-size:clamp(32px,4vw,52px);font-weight:900;line-height:1.05;letter-spacing:-1px;margin-bottom:20px}
.section--cream .section__title{color:var(--dark)}
.section__desc{font-size:16px;color:var(--text-dim);max-width:500px;line-height:1.8;margin-bottom:56px}
.section--cream .section__desc{color:var(--gray-2)}

/* ═══════════════════════════════════
   PROCESS STEPS
   ═══════════════════════════════════ */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}
.step{position:relative;background:var(--dark);padding:52px 36px;border-top:2px solid transparent;transition:all .5s var(--ease)}
.step:hover{border-top-color:var(--gold);background:var(--dark-2)}
.step__num{font-family:var(--serif);font-size:72px;font-weight:900;color:var(--dark-3);line-height:1;margin-bottom:20px;transition:color .5s}
.step:hover .step__num{color:var(--gold-dim)}
.step h3{font-family:var(--serif);font-size:22px;font-weight:700;color:var(--white);margin-bottom:12px}
.step p{font-size:14px;color:var(--text-dim);line-height:1.8}

/* ═══════════════════════════════════
   SERVICE CARDS
   ═══════════════════════════════════ */
.services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px}
.svc{position:relative;padding:48px 40px;background:var(--dark);transition:all .5s var(--ease);overflow:hidden}
.svc::before{content:'';position:absolute;top:0;left:0;width:3px;height:0;background:var(--gold);transition:height .5s var(--ease)}
.svc:hover::before{height:100%}
.svc:hover{background:var(--dark-2)}
.svc__icon{font-size:28px;margin-bottom:20px;display:block}
.svc h3{font-family:var(--serif);font-size:20px;font-weight:700;color:var(--white);margin-bottom:10px}
.svc p{font-size:14px;color:var(--text-dim);line-height:1.8;margin-bottom:16px}
.svc__list{list-style:none}
.svc__list li{display:flex;align-items:center;gap:10px;padding:5px 0;font-size:13px;color:var(--text-dim)}
.svc__list li::before{content:'';width:5px;height:5px;background:var(--gold);border-radius:50%;flex-shrink:0}

/* light variant for cream sections */
.svc--light{background:var(--white);border:1px solid var(--cream-2)}
.svc--light:hover{background:var(--white);border-color:var(--gold);box-shadow:0 20px 60px rgba(0,0,0,0.08)}
.svc--light h3{color:var(--dark)}
.svc--light p,.svc--light .svc__list li{color:var(--gray-2)}

/* ═══════════════════════════════════
   ABOUT
   ═══════════════════════════════════ */
.about__grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.about__img{position:relative;border-radius:4px;overflow:hidden;aspect-ratio:4/3;background:var(--cream-2)}
.about__img img{width:100%;height:100%;object-fit:cover}
.about__img-badge{position:absolute;bottom:0;left:0;background:var(--gold);color:var(--black);padding:14px 28px;font-weight:800;font-size:13px;letter-spacing:1px}
.about__text p{font-size:15px;line-height:1.9}
.about__text h3{font-family:var(--serif);font-size:18px;color:var(--gold);margin:24px 0 8px;font-weight:700}

/* Values */
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:64px}
.val{background:var(--dark);padding:44px 32px;text-align:center;transition:all .5s var(--ease)}
.val:hover{background:var(--dark-2)}
.val__icon{font-size:28px;margin-bottom:16px}
.val h4{font-family:var(--serif);font-size:18px;font-weight:700;color:var(--white);margin-bottom:8px}
.val p{font-size:13px;color:var(--text-dim);line-height:1.7}

/* Timeline */
.timeline{position:relative;max-width:660px;margin:0 auto;padding-left:48px}
.timeline::before{content:'';position:absolute;left:18px;top:0;bottom:0;width:1px;background:var(--cream-2)}
.tl-item{position:relative;margin-bottom:56px}
.tl-dot{position:absolute;left:-48px;top:6px;width:38px;height:38px;border-radius:50%;background:var(--cream);border:3px solid var(--cream-2);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:11px;font-weight:700;color:var(--gray-2);transition:all .3s}
.tl-dot--gold{background:var(--gold);border-color:var(--gold);color:var(--black)}
.tl-year{font-size:12px;font-weight:700;color:#8a7635;letter-spacing:2px;text-transform:uppercase;margin-bottom:6px}
.tl-item h3{font-family:var(--serif);font-size:22px;color:var(--dark);margin-bottom:8px}
.tl-item p{font-size:14px;color:var(--gray-2);line-height:1.8}

/* Mission */
.mission{position:relative;padding:64px;background:var(--dark);border-radius:4px;margin-top:80px;overflow:hidden}
.mission::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.mission h3{font-family:var(--serif);font-size:28px;color:var(--white);margin-bottom:16px}
.mission p{font-size:16px;color:var(--text-dim);line-height:1.9;max-width:700px}

/* ═══════════════════════════════════
   TESTIMONIALS
   ═══════════════════════════════════ */
.test-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px}
.testi{background:var(--white);padding:44px;position:relative;border:1px solid var(--cream-2);transition:all .4s var(--ease)}
.testi:hover{border-color:var(--gold);box-shadow:0 20px 60px rgba(0,0,0,0.06)}
.testi__stars{color:var(--gold);font-size:14px;letter-spacing:3px;margin-bottom:20px}
.testi p{font-size:15px;color:var(--gray-2);line-height:1.8;margin-bottom:24px}
.testi__author{display:flex;align-items:center;gap:14px}
.testi__avatar{width:42px;height:42px;border-radius:50%;background:var(--dark);color:var(--gold);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px}
.testi__name{font-weight:700;font-size:14px;color:var(--dark)}
.testi__loc{font-size:12px;color:var(--gray-1)}

/* ═══════════════════════════════════
   FAQ
   ═══════════════════════════════════ */
.faq-list{max-width:760px}
.faq-item{border-bottom:1px solid var(--border)}
.faq-q{width:100%;padding:28px 0;background:none;border:none;display:flex;justify-content:space-between;align-items:center;text-align:left;font-size:16px;font-weight:600;color:var(--white);gap:20px;cursor:pointer;font-family:var(--sans)}
.faq-q::after{content:'+';font-size:22px;color:var(--gold);font-weight:300;flex-shrink:0;transition:transform .3s;width:24px;text-align:center}
.faq-q.active::after{content:'−'}
.faq-a{max-height:0;overflow:hidden;transition:max-height .4s var(--ease),padding .4s var(--ease)}
.faq-a.open{max-height:300px;padding-bottom:28px}
.faq-a p{font-size:14px;color:var(--text-dim);line-height:1.8}
/* cream variant */
.faq-item--light{border-color:var(--cream-2)}
.faq-item--light .faq-q{color:var(--dark)}
.faq-item--light .faq-q::after{color:#8a7635}
.faq-item--light .faq-a p{color:var(--gray-2)}

/* ═══════════════════════════════════
   CONTACT
   ═══════════════════════════════════ */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px}
.contact-info h2{font-family:var(--serif);font-size:32px;font-weight:900;margin-bottom:36px}
.c-detail{display:flex;gap:16px;margin-bottom:28px}
.c-detail__icon{width:44px;height:44px;border-radius:12px;background:var(--gold-dim);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.c-detail__icon svg{width:18px;height:18px;fill:var(--gold)}
.c-detail__label{font-size:11px;color:var(--text-dimmer);text-transform:uppercase;letter-spacing:2px;margin-bottom:2px}
.c-detail__value{font-weight:600;font-size:15px}
.c-detail__value a{transition:color .3s}
.c-detail__value a:hover{color:var(--gold)}
/* light */
.c-detail--light .c-detail__icon{background:rgba(138,118,53,0.1)}
.c-detail--light .c-detail__icon svg{fill:#8a7635}
.c-detail--light .c-detail__label{color:var(--gray-1)}
.c-detail--light .c-detail__value{color:var(--dark)}
.c-detail--light .c-detail__value a{color:var(--dark)}
.c-detail--light .c-detail__value a:hover{color:#8a7635}
.c-hours h4{font-size:11px;font-weight:800;color:var(--gold);text-transform:uppercase;letter-spacing:3px;margin-bottom:16px}
.c-hours--light h4{color:#8a7635}
.c-hour-row{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--border);font-size:14px}
.c-hour-day{color:var(--text-dim)}
.c-hour-time{color:var(--white);font-weight:700}
.c-hour-row--light{border-color:var(--cream-2)}
.c-hour-row--light .c-hour-day{color:var(--gray-2)}
.c-hour-row--light .c-hour-time{color:var(--dark)}
.c-map{border-radius:4px;overflow:hidden;height:100%;min-height:420px;border:1px solid var(--cream-2)}
.c-map iframe{width:100%;height:100%;border:0;filter:grayscale(.2) contrast(1.1)}

/* ═══════════════════════════════════
   FORM
   ═══════════════════════════════════ */
.contact-form{background:var(--dark);border-radius:4px;padding:44px;border:1px solid var(--border)}
.contact-form--light{background:var(--white);border-color:var(--cream-2);box-shadow:0 20px 60px rgba(0,0,0,0.06)}
.contact-form h3{font-family:var(--serif);font-size:24px;color:var(--white);margin-bottom:32px}
.contact-form--light h3{color:var(--dark)}
.form-row{display:flex;gap:14px}
.form-row .fg{flex:1}
.fg{margin-bottom:18px}
.fg label{display:block;margin-bottom:6px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:2px;color:var(--text-dimmer)}
.contact-form--light .fg label{color:var(--gray-1)}
.fg input,.fg select,.fg textarea{width:100%;padding:14px 16px;background:rgba(255,255,255,0.04);border:1.5px solid var(--border-2);border-radius:8px;font-size:15px;font-family:var(--sans);color:var(--white);transition:all .3s}
.contact-form--light .fg input,.contact-form--light .fg select,.contact-form--light .fg textarea{background:var(--cream);border-color:var(--cream-2);color:var(--dark)}
.fg input:focus,.fg select:focus,.fg textarea:focus{outline:none;border-color:var(--gold);background:rgba(201,165,78,0.04)}
.fg input.error,.fg select.error{border-color:#e74c3c;background:rgba(231,76,60,0.04)}
.fg select{-webkit-appearance:none;appearance:none;color-scheme:light;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'%3E%3Cpath fill='%23999' d='M5 7L1 3h8z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px}
.fg select option{background:#fff;color:#111;padding:10px;font-size:15px}
.fg input::placeholder,.fg textarea::placeholder{color:var(--text-dimmer)}
.contact-form--light .fg input::placeholder,.contact-form--light .fg textarea::placeholder{color:var(--gray-1)}
.form-err{color:#e74c3c;font-size:11px;margin-top:4px;display:none}
.form-err.show{display:block}
.form-global-err{padding:12px 16px;background:rgba(231,76,60,0.08);border:1px solid rgba(231,76,60,0.2);border-radius:8px;color:#e74c3c;font-size:13px;text-align:center;margin-bottom:16px;display:none}
.form-global-err.show{display:block}
.form-submit{width:100%;padding:16px;background:var(--gold);color:var(--black);border:none;border-radius:100px;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:2px;transition:all .3s var(--ease);margin-top:8px}
.form-submit:hover{background:var(--white);transform:translateY(-1px);box-shadow:0 8px 30px rgba(201,165,78,0.3)}
.form-submit:disabled{opacity:.4;cursor:not-allowed;transform:none}
.form-spinner{display:none;width:28px;height:28px;margin:12px auto;border:2px solid var(--border-2);border-top:2px solid var(--gold);border-radius:50%;animation:spin .7s linear infinite}
.form-spinner.show{display:block}
@keyframes spin{100%{transform:rotate(360deg)}}
.form-ok{padding:56px 24px;text-align:center;display:none}
.form-ok.show{display:block}
.form-ok__icon{width:68px;height:68px;background:var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 24px}
.form-ok__icon svg{width:32px;height:32px;fill:var(--black)}
.form-ok h3{font-family:var(--serif);font-size:24px;color:var(--white);margin-bottom:8px}
.contact-form--light .form-ok h3{color:var(--dark)}
.form-ok p{font-size:14px;color:var(--text-dim)}
.contact-form--light .form-ok p{color:var(--gray-2)}

/* ═══════════════════════════════════
   CTA BANNER
   ═══════════════════════════════════ */
.cta{position:relative;padding:100px 0;text-align:center;overflow:hidden}
.cta::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,var(--gold) 0%,#d4b35a 50%,#b8933e 100%)}
.cta__inner{position:relative;z-index:2;max-width:600px;margin:0 auto}
.cta h2{font-family:var(--serif);font-size:clamp(28px,3.5vw,44px);color:var(--black);margin-bottom:16px;letter-spacing:-1px}
.cta p{font-size:16px;color:rgba(0,0,0,0.6);margin-bottom:36px;line-height:1.7}
.cta .btn{background:var(--black);color:var(--white)}
.cta .btn:hover{background:var(--dark-2);transform:translateY(-2px)}

/* ═══════════════════════════════════
   FOOTER
   ═══════════════════════════════════ */
.footer{background:var(--dark);border-top:1px solid var(--border);padding:60px 0 36px}
.footer__grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px}
.footer__brand-name{font-family:var(--serif);font-size:20px;color:var(--white);margin-bottom:4px}
.footer__brand-sub{font-size:10px;font-weight:700;color:var(--gold);letter-spacing:3px;text-transform:uppercase;margin-bottom:16px}
.footer__brand p{color:var(--text-dimmer);font-size:13px;line-height:1.7;max-width:260px}
.footer__col h4{font-size:11px;font-weight:800;color:var(--gold);text-transform:uppercase;letter-spacing:3px;margin-bottom:18px}
.footer__col a{display:block;color:var(--text-dimmer);font-size:14px;padding:4px 0;transition:color .3s}
.footer__col a:hover{color:var(--white)}
.footer__col p{color:var(--text-dimmer);font-size:14px;line-height:1.7}
.footer__bottom{border-top:1px solid var(--border);padding-top:24px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}
.footer__copy{color:var(--text-dimmer);font-size:11px;letter-spacing:1px}

/* ═══════════════════════════════════
   FLOATING ELEMENTS
   ═══════════════════════════════════ */
.float-cta{position:fixed;bottom:28px;right:28px;z-index:9998}
.float-btn{width:60px;height:60px;border-radius:50%;background:var(--gold);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 30px rgba(201,165,78,0.35);transition:all .3s var(--ease)}
.float-btn:hover{transform:scale(1.08);box-shadow:0 12px 40px rgba(201,165,78,0.45)}
.float-btn.hidden{opacity:0;pointer-events:none;transform:scale(.7)}
.float-btn svg{width:24px;height:24px;fill:var(--black)}
.wa-btn{position:fixed;bottom:100px;right:28px;z-index:9997;width:52px;height:52px;border-radius:50%;background:#25D366;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(37,211,102,0.3);transition:all .3s var(--ease)}
.wa-btn:hover{transform:scale(1.08)}
.wa-btn svg{width:26px;height:26px;fill:white}

/* ═══════════════════════════════════
   MODAL
   ═══════════════════════════════════ */
.modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.8);backdrop-filter:blur(8px);z-index:99999;align-items:center;justify-content:center;padding:16px}
.modal.active{display:flex}
.modal__box{background:var(--white);border:none;border-radius:20px;width:100%;max-width:440px;max-height:calc(100vh - 32px);overflow-y:auto;box-shadow:0 30px 80px rgba(0,0,0,0.5)}
.modal__head{background:linear-gradient(135deg,var(--dark-2),var(--dark-3));padding:28px 28px 24px;border-radius:16px 16px 0 0;position:sticky;top:0;z-index:10;border-bottom:1px solid var(--border)}
.modal__head h2{font-family:var(--serif);font-size:24px;color:var(--white)}
.modal__head p{font-size:13px;color:var(--text-dim);margin-top:4px}
.modal__close{position:absolute;top:20px;right:20px;width:36px;height:36px;background:rgba(255,255,255,0.06);border:1px solid var(--border);border-radius:50%;cursor:pointer;color:var(--white);font-size:20px;display:flex;align-items:center;justify-content:center;transition:all .3s}
.modal__close:hover{background:rgba(255,255,255,0.1);border-color:var(--gold)}
.modal__body{padding:28px}
.modal__body .fg label{color:#555}
.modal__body .fg input,.modal__body .fg select,.modal__body .fg textarea{background:#f8f7f4;border-color:#e0ddd6;color:#111}
.modal__body .fg input:focus,.modal__body .fg select:focus,.modal__body .fg textarea:focus{border-color:var(--gold);background:#fff}
.modal__body .fg input::placeholder,.modal__body .fg textarea::placeholder{color:#999}
.modal__body .fg select option{background:#fff;color:#111;padding:10px}
.modal__body .fg-err{color:#d94040}
.modal__body .form-msg--err{background:#fef5f5;border-color:#f5c6cb;color:#721c24}
.modal__body .submit-btn{background:#111;color:#fff}
.modal__body .submit-btn:hover{background:var(--gold);color:#111}
.modal__body .form-success-box h3{color:#111}
.modal__body .form-success-box p{color:#666}

/* ═══════════════════════════════════
   STATS BAR
   ═══════════════════════════════════ */
.stats-bar{padding:80px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.stats-bar__inner{display:flex;justify-content:center;gap:100px;flex-wrap:wrap}
.stat-block{text-align:center}
.stat-block__num{font-family:var(--serif);font-size:52px;font-weight:900;color:var(--gold);line-height:1}
.stat-block__label{font-size:12px;color:var(--text-dimmer);margin-top:8px;font-weight:600;letter-spacing:2px;text-transform:uppercase}

/* ═══════════════════════════════════
   UPLOAD ZONE
   ═══════════════════════════════════ */
.upload-zone{position:relative;border:2px dashed var(--border-2);border-radius:10px;padding:24px;text-align:center;transition:all .3s;cursor:pointer}
.upload-zone:hover,.upload-zone.dragover{border-color:var(--gold);background:rgba(201,165,78,0.04)}
.upload-input{position:absolute;inset:0;opacity:0;cursor:pointer;z-index:2}
.upload-label{display:flex;flex-direction:column;align-items:center;gap:6px;pointer-events:none}
.upload-icon{font-size:28px}
.upload-label span{font-size:13px;color:var(--text-dim)}
.upload-hint{font-size:11px;color:var(--text-dimmer)!important}
.contact-form--light .upload-zone{border-color:var(--cream-2)}
.contact-form--light .upload-zone:hover,.contact-form--light .upload-zone.dragover{border-color:var(--gold);background:rgba(201,165,78,0.06)}
.contact-form--light .upload-label span{color:var(--gray-2)}
.contact-form--light .upload-hint{color:var(--gray-1)!important}
.modal__body .upload-zone{border-color:#e0ddd6}
.modal__body .upload-zone:hover,.modal__body .upload-zone.dragover{border-color:var(--gold);background:rgba(201,165,78,0.06)}
.modal__body .upload-label span{color:#666}
.modal__body .upload-hint{color:#999!important}
.upload-preview{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.upload-preview:empty{display:none}
.upload-thumb{position:relative;width:64px;height:64px;border-radius:8px;overflow:hidden;border:1px solid rgba(0,0,0,0.1)}
.upload-thumb img{width:100%;height:100%;object-fit:cover}
.upload-thumb__remove{position:absolute;top:-4px;right:-4px;width:20px;height:20px;background:#e74c3c;color:#fff;border:none;border-radius:50%;font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1;z-index:3}

/* ═══════════════════════════════════
   ANIMATIONS
   ═══════════════════════════════════ */
@keyframes fadeUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
.reveal{opacity:0;transform:translateY(28px);transition:all .7s var(--ease)}
.reveal.vis{opacity:1;transform:translateY(0)}
.reveal-d1{transition-delay:.1s}
.reveal-d2{transition-delay:.2s}
.reveal-d3{transition-delay:.3s}

/* ═══════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════ */
@media(max-width:968px){
  .nav__links{display:none;position:fixed;top:80px;left:0;right:0;background:rgba(8,8,8,0.98);backdrop-filter:blur(30px);flex-direction:column;padding:24px;gap:4px;border-bottom:1px solid var(--border)}
  .nav__links.open{display:flex}
  .burger{display:flex}
  .nav__link{padding:14px 16px;font-size:15px}
  .nav__cta-link{text-align:center;margin-top:8px}
  .steps{grid-template-columns:1fr}
  .services-grid{grid-template-columns:1fr}
  .about__grid{grid-template-columns:1fr;gap:40px}
  .test-grid{grid-template-columns:1fr}
  .contact-grid{grid-template-columns:1fr}
  .values-grid{grid-template-columns:1fr}
  .hero__stats{gap:32px;flex-wrap:wrap}
  .footer__grid{grid-template-columns:1fr 1fr;gap:32px}
  .stats-bar__inner{gap:40px}
  .mission{padding:40px 28px}
}
@media(max-width:480px){
  .section{padding:64px 0}
  .hero__content{padding:110px 0 50px}
  .page-hero{padding:120px 0 50px}
  .hero__title{font-size:clamp(38px,10vw,52px);letter-spacing:-1px}
  .hero__btns{flex-direction:column}
  .btn{width:100%;justify-content:center;padding:16px 28px;font-size:14px}
  .form-row{flex-direction:column;gap:0}
  .fg-row{flex-direction:column;gap:0}
  .fg input,.fg select,.fg textarea{font-size:16px}
  .footer__grid{grid-template-columns:1fr}
  .float-cta{bottom:16px;right:16px;padding:14px 20px;font-size:12px}
  .wa-btn{bottom:80px;right:16px;width:46px;height:46px}
  .float-btn{width:54px;height:54px}
  .step{padding:36px 20px}
  .svc{padding:32px 20px}
  .contact-form{padding:24px 20px}
  .form-card{padding:28px 20px}
  .modal__body{padding:20px}
  .modal{padding:0}
  .modal__box{border-radius:0;max-height:100vh;height:100%}
  .modal__head{border-radius:0}
  .stats-bar__inner{gap:28px}
  .hero__stat-val{font-size:32px}
  .marquee__item{padding:14px 28px;font-size:12px}
  .page-hero__title{font-size:clamp(32px,8vw,48px)}
  .section__title{font-size:clamp(28px,6vw,40px)}
}
