

/* ===========================================
   ====== GLOBAL MOBILE RESPONSIVENESS  ======
   ===========================================
   Ensures every sub-page (leistungen, smart-manufaktur,
   green, standort, ueber-uns, karriere, kontakt, agb,
   datenschutz, impressum) renders correctly on phones
   and tablets without horizontal scroll.
   =========================================== */

@media (max-width: 968px) {
    /* Container & section padding tighten on tablets */
    .container { width: 92%; }
    :root { --section-pad: clamp(60px, 9vh, 100px); }

    /* Pillars (used on leistungen, smart-manufaktur) shrink padding */
    .pillar { padding: 36px 24px !important; border-radius: 32px !important; gap: 28px !important; }
    .pillar__title { font-size: 1.5rem !important; }
    .pillar__text { font-size: 0.95rem; }

    /* Section titles a touch smaller */
    .section__title { font-size: clamp(1.7rem, 4vw, 2.4rem); }

    /* Force two-up flex children to wrap to single column on tablets and below */
    .pillar [style*="flex-wrap: wrap"] > .pillar__text-content,
    .pillar [style*="flex-wrap:wrap"] > .pillar__text-content,
    .pillar [style*="flex-wrap: wrap"] > .cockpit-wrap,
    .pillar [style*="flex-wrap:wrap"] > .cockpit-wrap,
    .pillar .smart-pillar__row > .pillar__text-content,
    .pillar .smart-pillar__row > .cockpit-wrap {
        flex: 1 1 100% !important;
        max-width: 100% !important;
    }

    /* Sectors stack on mobile */
    .sectors { padding: 24px !important; grid-template-columns: 1fr; gap: 16px; }

    /* Hero generic */
    .hero__title { font-size: clamp(2rem, 6vw, 3rem); }
    .hero__sub { font-size: 1rem; margin-bottom: 32px; }
    .hero__cta { padding: 14px 28px; font-size: 0.92rem; }

    /* CTAs and buttons easy to tap */
    .nav__cta, .hero__cta, .kontakt-card__btn,
    .kontakt-form__submit { min-height: 44px; }
}

@media (max-width: 768px) {
    /* Common pillar padding tightening */
    .pillar { padding: 28px 20px !important; gap: 24px !important; border-radius: 24px !important; }
    .pillar__title { font-size: 1.35rem !important; }
    .pillar__text { font-size: 0.92rem; line-height: 1.65; }
    .pillar__num { font-size: 0.7rem; padding: 4px 12px; }
    .pillar__feat { font-size: 0.88rem; }

    /* Force flex children inside pillar inner rows to take full width */
    .pillar > div[style*="display: flex"],
    .pillar > div[style*="display:flex"],
    .pillar > .smart-pillar__row {
        flex-direction: column !important;
        gap: 24px !important;
    }
    .pillar > div[style*="display: flex"] > *,
    .pillar > div[style*="display:flex"] > *,
    .pillar > .smart-pillar__row > * {
        flex: 1 1 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    /* Section padding */
    .section--page-start { padding-top: calc(var(--nav-h) + clamp(56px, 9vh, 90px)); }

    /* Section title/sub */
    .section__title { font-size: clamp(1.5rem, 6vw, 2rem) !important; }
    .section__sub { font-size: 0.95rem; margin-bottom: 32px; }

    /* Nav: hide CTA "Kontakt" inside the burger menu — user will see it via mobile menu */
    .header-main__inner { padding: 0 4%; }

    /* All grid layouts collapse */
    .overview-grid, .phases, .sectors, .team-grid, .team-grid--three,
    .karriere-werte__grid, .why-grid, .pilot-details, .kontakt-grid,
    .kontakt-form__row, .p4-promise__grid,
    .p4-szenarien__grid, .synergy__grid, .cocreation-steps {
        grid-template-columns: 1fr !important;
        gap: 16px;
    }

    /* Forms: full-width inputs and submit */
    .kontakt-form__submit { width: 100%; max-width: 420px; align-self: stretch; text-align: center; }
    .kontakt-form-wrap { padding: 24px 20px !important; border-radius: 16px; }
    .kontakt-form__input { font-size: 16px; /* prevents iOS zoom on focus */ }

    /* Pilot box / dark CTA boxes */
    .karriere-cta-box, .pilot-box { padding: 32px 20px !important; border-radius: 20px !important; }

    /* Cards smaller padding */
    .feature-card, .karriere-wert,
    .why-card, .pilot-details__card, .sector-card, .kontakt-card {
        padding: 24px !important;
    }

    /* Slider/Gallery height adjusts */
    .slider-track { aspect-ratio: 4/3; }
    .gallery__stage { aspect-ratio: 4/3; border-radius: 16px; }

    /* Footer + scroll-to-top */
    .scroll-to-top { right: 16px; bottom: 16px; width: 44px; height: 44px; }

    /* P4 projekt items in 1 col */
    .p4-projekt__stats { grid-template-columns: 1fr !important; }
    .p4-projekt__feat { grid-template-columns: 1fr !important; gap: 4px; }
}

@media (max-width: 600px) {
    .container { width: 94%; }

    /* Smaller pillar */
    .pillar { padding: 24px 18px !important; border-radius: 20px !important; }
    .pillar__title { font-size: 1.2rem !important; line-height: 1.25; }

    /* Hero compact */
    .hero { min-height: auto; padding-bottom: 48px; }
    .hero__badge { font-size: 0.72rem; padding: 6px 14px; margin-bottom: 24px; }
    .hero__title { font-size: clamp(1.85rem, 8.5vw, 2.4rem); margin-bottom: 18px; }
    .hero__sub { font-size: 0.95rem; margin-bottom: 28px; line-height: 1.6; }

    /* Section title — smaller */
    .section__title { font-size: 1.5rem !important; line-height: 1.2; }
    .section__sub { font-size: 0.9rem; }
    .section__tag { font-size: 0.7rem; }

    /* Cards minimal padding */
    .feature-card, .karriere-wert,
    .why-card, .pilot-details__card, .sector-card, .kontakt-card { padding: 20px !important; border-radius: 14px !important; }

    /* Forms: stack labels above inputs nicely */
    .kontakt-form { gap: 14px; }
    .kontakt-form-wrap__title { font-size: 1.1rem; }

    /* Karriere cta box even smaller */
    .karriere-cta-box, .pilot-box { padding: 24px 16px !important; }

    /* Disable horizontal-scroll inducers */
    .pillar [style*="flex"] [style*="min-width"],
    .pillar .smart-pillar__row .smart-pillar__media,
    .pillar .smart-pillar__row .pillar__text-content { min-width: 0 !important; }

    /* Hero CTA buttons full width on tiny screens */
    .hero__cta-row { flex-direction: column; gap: 10px; }
    .hero__cta-row .hero__cta,
    .hero__cta-row .hero__cta-secondary { width: 100%; justify-content: center; }
}

/* ============================================
   Tablet/landscape specifics — 968px → 1100px
   ============================================ */
@media (min-width: 769px) and (max-width: 1100px) {
    .container { width: 94%; }
    .pillar { padding: 44px 36px !important; }
}
/* ===== PREMIUM VISUAL POLISH LAYER ===== */
:root{
  --premium-shadow-sm:0 10px 28px rgba(48,67,95,.07);
  --premium-shadow-md:0 18px 48px rgba(48,67,95,.10);
  --premium-shadow-lg:0 28px 70px rgba(48,67,95,.14);
  --premium-border:1px solid rgba(48,67,95,.10);
  --premium-glass:rgba(255,255,255,.62);
}

.section--page-start{padding-top:calc(var(--nav-h) + 72px)}
.section__tag{letter-spacing:.12em;color:rgba(48,67,95,.72)}
.section__title{letter-spacing:0}
.section__sub{max-width:760px;color:rgba(48,67,95,.70)}

.pillar,
.sector-card,
.perk-card,
.team-card-new,
.kontakt-card,
.kontakt-form-wrap,
.philosophy-box,
.karriere-wert,
.why-card,
.pilot-details__card,
.feature-card{
  border:var(--premium-border);
  box-shadow:var(--premium-shadow-sm);
}

.pillar{border-radius:34px;padding:52px;background:rgba(255,255,255,.52);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.pillar:nth-child(even){background:rgba(255,255,255,.70)}
.pillar__img{border-radius:24px;box-shadow:var(--premium-shadow-sm)}
.pillar__num{border:1px solid rgba(48,67,95,.08);box-shadow:0 6px 18px rgba(48,67,95,.05)}
.pillar__feat{gap:14px;line-height:1.65}
.pillar__feat-icon{box-shadow:inset 0 0 0 1px rgba(74,127,212,.10)}

.sector-card:hover,
.perk-card:hover,
.team-card-new:hover,
.kontakt-card:hover,
.feature-card:hover{
  transform:translateY(-4px);
  box-shadow:var(--premium-shadow-md);
}

.section--dark .pilot-details__card{
  border:1px solid rgba(255,255,255,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06), 0 16px 34px rgba(0,0,0,.08);
}

.nav-pill{box-shadow:0 12px 36px rgba(48,67,95,.10), inset 0 1px 0 rgba(255,255,255,.70)}
.nav__cta,
.hero__cta,
.kontakt-card__btn,
.kontakt-form__submit,
.wa-btn{
  box-shadow:0 10px 24px rgba(48,67,95,.18);
}
.nav__cta:hover,
.hero__cta:hover,
.kontakt-card__btn:hover,
.kontakt-form__submit:hover,
.wa-btn:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 34px rgba(48,67,95,.22);
}

.kontakt-card__btn:not(.kontakt-card__btn--wa){
  background:var(--yellow);
  color:var(--black);
  border:2px solid var(--black);
  box-shadow:4px 4px 0 0 var(--orange);
  transition:all .2s ease-out;
}

.kontakt-card__btn:not(.kontakt-card__btn--wa):hover{
  background:var(--orange);
  color:var(--white);
  transform:translate(-2px,-2px);
  box-shadow:6px 6px 0 0 var(--black);
}

.kontakt-card__btn:not(.kontakt-card__btn--wa):active{
  transform:translate(2px,2px);
  box-shadow:2px 2px 0 0 var(--black);
}

.kontakt-form__submit{
  background:var(--yellow);
  color:var(--black);
  border:2px solid var(--black);
  box-shadow:4px 4px 0 0 var(--orange);
  transition:all .2s ease-out;
}

.kontakt-form__submit:hover{
  background:var(--orange);
  color:var(--white);
  transform:translate(-2px,-2px);
  box-shadow:6px 6px 0 0 var(--black);
}

.kontakt-form__submit:active{
  transform:translate(2px,2px);
  box-shadow:2px 2px 0 0 var(--black);
}

.cockpit-frame{
  border-radius:28px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:0 24px 70px rgba(23,54,93,.18), inset 0 1px 0 rgba(255,255,255,.14)!important;
}
.cockpit-iframe{border-radius:inherit!important;background:#121417}

.ars2{
  border:1px solid rgba(48,67,95,.10)!important;
  border-radius:24px!important;
  box-shadow:var(--premium-shadow-lg)!important;
  overflow:hidden;
}
.ars2-header{background:rgba(255,255,255,.76);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:18px 22px!important}
.ars2-badge{background:rgba(74,127,212,.10)!important;color:var(--black)!important;border:1px solid rgba(74,127,212,.16)}
.ars2-body{border-top:1px solid rgba(48,67,95,.08)!important}
.ars2-visual{background:linear-gradient(180deg,#fbfaf7,#f0ede5);border-right:1px solid rgba(48,67,95,.08)!important}
.ars2-instr{background:#fffdf8}
.ars2-stepnum,.ars2-meta,.ars2-plabel,.ars2-slabel{color:rgba(48,67,95,.52)!important}
.ars2-steptitle,.ars2-pval,.ars2-sval{color:var(--black)!important}
.ars2-param{background:rgba(241,239,231,.65)!important;border:1px solid rgba(48,67,95,.08)!important;border-radius:12px!important}
.ars2-hl{border-color:var(--blue)!important;background:rgba(74,127,212,.08)!important}
.ars2-ptr{border-color:var(--blue)!important;box-shadow:0 10px 28px rgba(74,127,212,.22)}
.ars2-ptr::after{background:var(--blue)!important}
.ars2-bar-fill{background:linear-gradient(90deg,var(--blue),#76a4ed)!important}
.ars2-btn{border-radius:999px!important;border-color:rgba(48,67,95,.14)!important;box-shadow:none!important}
.ars2-btn-primary{background:var(--black)!important;border-color:var(--black)!important;color:#fff!important}

.dpp-photo-stage{
  border-radius:24px!important;
  border:1px solid rgba(48,67,95,.12);
  box-shadow:var(--premium-shadow-lg)!important;
}
.dpp-dress-photo{border-radius:24px!important}
.dpp-scan-label{box-shadow:0 12px 28px rgba(48,67,95,.22)!important;text-transform:uppercase}
.dpp-modal-box{
  border-radius:18px!important;
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 34px 90px rgba(0,0,0,.42)!important;
}
.dpp-mpanel{border-radius:14px!important;border:1px solid rgba(255,255,255,.08)!important}
.dpp-mtab{border-radius:12px!important;transition:transform .2s ease, background .2s ease, color .2s ease}
.dpp-mtab:hover{transform:translateY(-1px)}

.bgb-accordion{border:var(--premium-border);box-shadow:var(--premium-shadow-sm);text-shadow:none}
.bgb-accordion__title,.bgb-accordion__num,.bgb-accordion__inner{text-shadow:none}
.bgb-accordion.is-expanded{background:rgba(255,255,255,.46)}

.kontakt-form__input{box-shadow:inset 0 1px 0 rgba(255,255,255,.55)}
.kontakt-form__input:focus{box-shadow:0 0 0 4px rgba(74,127,212,.18);outline:none}

@media (max-width:968px){
  .section--page-start{padding-top:calc(var(--nav-h) + 52px)}
  .pillar{border-radius:28px!important;padding:34px 24px!important}
  .ars2,.dpp-photo-stage{border-radius:20px!important}
}
@media (max-width:768px){
  .section__sub{max-width:100%}
  .ars2-header{padding:14px 16px!important}
  .ars2-visual{border-right:none!important}
  .dpp-modal-box{max-height:88dvh!important;border-radius:16px!important}
}
@media (max-width:600px){
  .pillar{border-radius:18px!important;padding:22px 16px!important}
  .sector-card:hover,.perk-card:hover,.team-card-new:hover,.kontakt-card:hover,.feature-card:hover{transform:none}
  .nav__cta:hover,.hero__cta:hover,.kontakt-card__btn:hover,.kontakt-form__submit:hover,.wa-btn:hover{transform:none}
}
/* ===== MOBILE QA POLISH LAYER ===== */
@media (max-width: 968px) {
  html, body { width: 100%; max-width: 100%; overflow-x: hidden; }
  .header-main { padding: 12px 0; }
  .header-main.scrolled { padding: 8px 0; }
  .header-main .container.header-main__inner {
    width: 100%;
    padding-left: max(10px, env(safe-area-inset-left));
    padding-right: max(12px, env(safe-area-inset-right));
  }
  .header-main__inner { min-height: 58px; align-items: center; }
  .header-main__logo { height: auto !important; margin-top: 0 !important; align-self: center !important; gap: 3px !important; }
  .header-main__logo img { height: 58px !important; max-width: 46vw; object-fit: contain; }
  .header-main__brand-text {
    max-width: 138px;
    margin-left: -7px;
    line-height: .88;
    white-space: nowrap;
    transform: translateY(-1px);
  }
  .header-main__brand-main { font-size: clamp(1.35rem, 5vw, 1.8rem); letter-spacing: .07em; }
  .header-main__brand-sub { margin-top: 5px; font-size: clamp(.48rem, 1.8vw, .62rem); letter-spacing: .3em; }

  .nav__burger {
    display: flex;
    position: relative;
    z-index: 1002;
    width: 46px;
    height: 46px;
    align-items: center;
    justify-content: center;
    gap: 0;
    border-radius: 50%;
    background: rgba(241,239,231,.82);
    border: 1px solid rgba(48,67,95,.12);
    box-shadow: 0 12px 28px rgba(48,67,95,.12), inset 0 1px 0 rgba(255,255,255,.72);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
  }
  .nav__burger span {
    position: absolute;
    width: 18px;
    height: 2px;
    border-radius: 2px;
    transform-origin: center;
  }
  .nav__burger span:nth-child(1) { transform: translateY(-6px); }
  .nav__burger span:nth-child(2) { transform: translateY(0); }
  .nav__burger span:nth-child(3) { transform: translateY(6px); }
  .nav__burger.active span:nth-child(1) { transform: rotate(45deg); }
  .nav__burger.active span:nth-child(2) { opacity: 0; transform: scaleX(.4); }
  .nav__burger.active span:nth-child(3) { transform: rotate(-45deg); }

  .mobile-menu {
    z-index: 1001;
    justify-content: flex-start;
    align-items: stretch;
    gap: 8px;
    padding: calc(var(--nav-h) + 28px) max(24px, env(safe-area-inset-left)) max(28px, env(safe-area-inset-bottom));
    overflow-y: auto;
    background:
      linear-gradient(180deg, rgba(241,239,231,.96), rgba(236,234,224,.98)),
      var(--sand);
  }
  .mobile-menu a {
    width: min(100%, 420px);
    margin: 0 auto;
    padding: 13px 18px;
    border-radius: 16px;
    font-size: clamp(1.05rem, 4.5vw, 1.35rem);
    line-height: 1.15;
    text-align: center;
    background: rgba(255,255,255,.36);
    border: 1px solid rgba(48,67,95,.08);
  }
  .mobile-menu a:active { transform: scale(.99); }
  .mobile-menu .lang-switch--mobile {
    width: max-content;
    margin: 12px auto 0 !important;
    gap: 10px;
  }

  .section { padding: clamp(58px, 10vh, 90px) 0; }
  .section--page-start { padding-top: calc(var(--nav-h) + 56px) !important; }
  .section__title,
  .hero__title,
  .quote-block__text,
  .pilot-box__title,
  .karriere-cta-box__title {
    overflow-wrap: anywhere;
    text-wrap: balance;
  }
  .section__sub,
  .hero__sub,
  .pillar__text,
  .team-card-new__bio,
  .kontakt-card__text { text-wrap: pretty; }

  .hero { min-height: auto; padding-top: calc(var(--nav-h) + 18px); }
  .hero__content { padding-top: clamp(40px, 8vh, 72px); padding-bottom: clamp(48px, 8vh, 80px); }
  .hero__cta, .pilot-cta, .nav__cta, .kontakt-card__btn, .kontakt-form__submit { width: min(100%, 420px); justify-content: center; }

  .pillar [style*="padding: 40px"],
  .pillar[style*="padding: 40px"],
  .pillar.smart-pillar { padding: 30px 24px !important; }
  .pillar [style*="font-size: 1.5rem"],
  .quote-block__text[style*="font-size: 1.5rem"] { font-size: clamp(1.05rem, 4.4vw, 1.28rem) !important; }
  .reveal[style*="padding: 60px 40px"] { padding: 38px 24px !important; border-radius: 20px !important; }

  #loesungen .sectors .sector-card > img[src*="dob-excellence"],
  #loesungen .sectors .sector-card > img[src*="female-fit"] {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
  }

  .cockpit-wrap { width: 100%; }
  .cockpit-frame { max-width: 100% !important; margin-inline: auto; }
  .ars2 { width: 100%; max-width: 100%; }
  .ars2-body { max-height: none; }
  .ars2-visual {
    aspect-ratio: 1224 / 1285 !important;
    min-height: min(540px, 105vw);
  }
  .ars2-visual > img {
    object-fit: contain !important;
    object-position: center center !important;
    background: linear-gradient(180deg,#fbfaf7,#f0ede5);
  }
  .ars2-controls { gap: 8px !important; }
  .ars2-controls .ars2-btn { min-height: 42px; }

  .dpp-photo-stage { max-width: min(100%, 390px) !important; }
  .dpp-scan-label { font-size: .56rem !important; padding: 4px 9px !important; }
  .dpp-modal-ov { padding: 12px !important; align-items: flex-end !important; }
  .dpp-modal-box { width: 100% !important; max-height: 86dvh !important; }
  .dpp-mhead { padding: 22px 52px 16px 20px !important; align-items: flex-start !important; }
  .dpp-mhead-title { font-size: clamp(1.8rem, 11vw, 2.4rem) !important; }
  .dpp-mbody { padding: 22px 18px !important; }
  .dpp-layout { grid-template-columns: 1fr !important; gap: 18px !important; }
  .dpp-mtabs { position: static !important; display: grid !important; grid-template-columns: 1fr 1fr; gap: 8px; }
  .dpp-mtab { min-height: 42px; padding: 10px 8px !important; font-size: .78rem !important; }
  .dpp-mrow, .dpp-mecohd { gap: 8px; }
}

@media (max-width: 600px) {
  .container { width: min(94%, calc(100% - 24px)); }
  .header-main .container.header-main__inner {
    width: 100%;
    padding-left: max(8px, env(safe-area-inset-left));
    padding-right: max(10px, env(safe-area-inset-right));
  }
  .header-main__logo img { height: 50px !important; max-width: 52vw; }
  .header-main__brand-text { max-width: 112px; margin-left: -6px; transform: translateY(-1px); }
  .header-main__brand-main { font-size: 1.28rem; letter-spacing: .065em; }
  .header-main__brand-sub { margin-top: 4px; font-size: .46rem; letter-spacing: .27em; }
  .nav__burger { width: 42px; height: 42px; }
  .mobile-menu { padding-top: calc(var(--nav-h) + 18px); gap: 7px; }
  .mobile-menu a { padding: 11px 14px; border-radius: 14px; }

  .section { padding: 52px 0; }
  .section--page-start { padding-top: calc(var(--nav-h) + 42px) !important; }
  .section__title { font-size: clamp(1.52rem, 7.2vw, 2rem) !important; }
  .section__sub { margin-bottom: 28px; }
  .hero__title { font-size: clamp(1.95rem, 10vw, 2.45rem) !important; }

  .pillar__feat { align-items: flex-start; }
  .pillar__feat-icon { width: 26px; height: 26px; }
  .team-card-new .team-card__img { min-height: 0; }
  .kontakt-card__btn svg { flex-shrink: 0; }
  .kontakt-form__input { min-height: 48px; }

  .ars2-visual {
    min-height: min(500px, 110vw);
  }
  .ars2-stat { align-items: flex-start !important; flex-direction: column; }
  .ars2-controls .ars2-btn { flex: 1 1 calc(50% - 8px); padding-inline: 12px !important; }
  .dpp-mtabs { grid-template-columns: 1fr !important; }
  .dpp-mrow { align-items: flex-start !important; }
}

@media (max-width: 768px) {
  .ars2 {
    display: grid !important;
    grid-template-rows: auto minmax(0, 1fr) auto auto !important;
    position: relative !important;
    height: calc(100vh - 86px) !important;
    height: min(620px, calc(100dvh - 86px)) !important;
    max-height: calc(100vh - 86px) !important;
    max-height: calc(100dvh - 86px) !important;
    min-height: 0 !important;
  }
  .ars2-header {
    flex-wrap: nowrap !important;
    gap: 8px !important;
    padding: 10px 12px !important;
  }
  .ars2-badge {
    flex: 0 0 auto !important;
    padding: 4px 10px !important;
    font-size: 10px !important;
    white-space: nowrap !important;
  }
  .ars2-meta {
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    font-size: 9.5px !important;
  }
  .ars2-body {
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: minmax(150px, 42%) minmax(0, 1fr) !important;
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
    margin-top: 0 !important;
    overflow: hidden !important;
  }
  .ars2-visual {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    aspect-ratio: auto !important;
    overflow: hidden !important;
    background: #fff !important;
    border-right: none !important;
    border-bottom: 1px solid rgba(48,67,95,.08) !important;
  }
  .ars2-visual > img {
    display: block !important;
    object-fit: contain !important;
    object-position: center center !important;
    background: #fff !important;
  }
  .ars2-hl {
    border-width: 1.5px !important;
    transform: scale(.72) !important;
    transform-origin: center center !important;
  }
  .ars2-ptr {
    width: 16px !important;
    height: 16px !important;
    border-width: 2px !important;
  }
  .ars2-ptr::after {
    width: 5px !important;
    height: 5px !important;
  }
  .ars2-svg {
    display: none !important;
    position: absolute !important;
    inset: 4px 0 2px !important;
    width: 100% !important;
    height: calc(100% - 6px) !important;
    max-width: none !important;
  }
  .ars2-instr {
    min-height: 0 !important;
    overflow: hidden !important;
    gap: 6px !important;
    padding: 10px 12px !important;
  }
  .ars2-stepnum {
    font-size: 9px !important;
    letter-spacing: .08em !important;
  }
  .ars2-steptitle {
    font-size: clamp(1rem, 4.8vw, 1.22rem) !important;
    line-height: 1.2 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden !important;
  }
  .ars2-stepdetail {
    font-size: 11px !important;
    line-height: 1.35 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden !important;
  }
  .ars2-warn {
    max-height: 42px !important;
    overflow: hidden !important;
    padding: 6px 8px !important;
    font-size: 10px !important;
    line-height: 1.25 !important;
  }
  .ars2-params {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 6px !important;
    margin-top: 0 !important;
  }
  .ars2-param {
    min-width: 0 !important;
    padding: 6px 8px !important;
    border-radius: 8px !important;
  }
  .ars2-plabel {
    margin-bottom: 1px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    font-size: 9px !important;
  }
  .ars2-pval {
    font-size: 12.5px !important;
    line-height: 1.1 !important;
  }
  .ars2-prog {
    padding: 8px 12px !important;
    gap: 8px !important;
  }
  .ars2-bar-bg {
    height: 5px !important;
  }
  .ars2-pct {
    min-width: 30px !important;
    font-size: 10px !important;
  }
  .ars2-done {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 82px !important;
    z-index: 4 !important;
    padding: 8px 12px !important;
    border-top: 1px solid #a7d7b8 !important;
    box-shadow: 0 -8px 18px rgba(255,255,255,.78) !important;
  }
  .ars2-done p {
    font-size: 11px !important;
  }
  .ars2-stats {
    display: none !important;
  }
  .ars2-controls {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    grid-template-areas:
      "next next"
      "prev reset" !important;
    gap: 8px !important;
    padding: 10px 12px 12px !important;
  }
  #ars2-prev {
    grid-area: prev !important;
  }
  #ars2-next {
    grid-area: next !important;
  }
  .ars2-reset {
    grid-area: reset !important;
  }
  .ars2-controls .ars2-btn {
    width: 100% !important;
    min-height: 38px !important;
    flex: initial !important;
    order: initial !important;
    padding: 8px 10px !important;
    font-size: 11.5px !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
  }
  .ars2-controls .ars2-btn-primary,
  .ars2-controls .ars2-btn-success {
    flex: initial !important;
    order: initial !important;
  }
}

@media (max-width: 380px) {
  .ars2 {
    height: calc(100vh - 78px) !important;
    height: min(580px, calc(100dvh - 78px)) !important;
    max-height: calc(100vh - 78px) !important;
    max-height: calc(100dvh - 78px) !important;
  }
  .ars2-body {
    grid-template-rows: minmax(132px, 39%) minmax(0, 1fr) !important;
  }
  .ars2-header {
    padding: 8px 10px !important;
  }
  .ars2-badge {
    font-size: 9px !important;
  }
  .ars2-steptitle {
    font-size: 1rem !important;
  }
  .ars2-params {
    gap: 5px !important;
  }
  .ars2-param {
    padding: 5px 7px !important;
  }
  .ars2-controls {
    gap: 6px !important;
    padding: 8px 10px 10px !important;
  }
  .ars2-controls .ars2-btn {
    min-height: 36px !important;
    font-size: 10.5px !important;
  }
  .ars2-done {
    bottom: 76px !important;
  }
}

@media (max-height: 680px) and (max-width: 968px) {
  .mobile-menu { justify-content: flex-start; gap: 6px; padding-top: 76px; }
  .mobile-menu a { padding-block: 9px; font-size: 1rem; }
  .mobile-menu .lang-switch--mobile { margin-top: 8px !important; }
}

@media (prefers-reduced-motion: reduce) {
  .mobile-menu,
  .nav__burger span,
  .gallery__img,
  .reveal,
  .pillar,
  .sector-card,
  .perk-card,
  .team-card-new,
  .kontakt-card { transition: none !important; animation: none !important; }
}

/* ===== SMART MANUFAKTUR PILLAR INLINE EXTRACTION ===== */
.smart-pillar{display:block!important;direction:ltr!important;border-radius:24px;padding:40px;border:none}
.pillar.smart-pillar--sand{background:var(--sand)}
.pillar.smart-pillar--dark{background:var(--dark);color:var(--white);margin-top:24px}
.pillar.smart-pillar--white{background:var(--white);border:2px solid var(--sand-dark);margin-top:24px}
.pillar.smart-pillar--data{background:var(--sand);margin-top:24px}
.smart-pillar__row{display:flex;flex-wrap:wrap;gap:40px;align-items:flex-start}
.smart-pillar__content{min-width:0}
.smart-pillar__content--wide{flex:1 1 400px;max-width:100%}
.smart-pillar__content--ar{flex:1 1 360px}
.smart-pillar__content--dpp{flex:1 1 320px}
.smart-pillar__heading-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-bottom:20px}
.smart-pillar__media{min-width:0}
.smart-pillar__media--ar{flex:1 1 400px}
.smart-pillar__media--dpp{flex:1 1 420px}

/* ===== SMART MANUFAKTUR AR SIMULATOR INLINE EXTRACTION ===== */
.ars2{font-family:var(--font);font-size:14px;color:#111;background:#fff;border:1px solid #e0ddd6;border-radius:20px;overflow:hidden}
.ars2-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 0}
.ars2-badge{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;color:#1a6b3c;background:#e6f4ec;padding:5px 13px;border-radius:20px}
.ars2-dot{width:6px;height:6px;border-radius:50%;background:currentColor;animation:ars2-blink 1.8s ease-in-out infinite}
@keyframes ars2-blink{0%,100%{opacity:1}50%{opacity:.25}}
.ars2-meta{font-size:11px;color:#999;letter-spacing:.02em}
/* Main panel */
.ars2-body{display:grid;grid-template-columns:1fr 1fr;height:400px;border-top:1px solid #eeebe4;margin-top:14px}
.ars2-visual{position:relative;overflow:hidden;border-right:1px solid #eeebe4;height:100%}
.ars2-visual > img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.ars2-vlabel{display:none}
.ars2-svg{width:100%;max-width:220px;display:none;margin:0 auto}
.ars2-overlay{position:absolute;inset:0;pointer-events:none}
/* dashed blue rect highlight */
.ars2-hl{position:absolute;border:2px dashed #2563EB;border-radius:4px;transition:all .45s ease;background:rgba(37,99,235,.04)}
/* circle pointer */
.ars2-ptr{position:absolute;width:22px;height:22px;border-radius:50%;border:2.5px solid #2563EB;background:rgba(255,255,255,.9);transition:all .45s ease;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center}
.ars2-ptr::after{content:'';width:8px;height:8px;border-radius:50%;background:#2563EB}
/* instruction side */
.ars2-instr{padding:20px 18px;display:flex;flex-direction:column;gap:10px;overflow:auto}
.ars2-stepnum{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#999}
.ars2-steptitle{font-size:17px;font-weight:700;color:#111;line-height:1.3}
.ars2-stepdetail{font-size:12.5px;color:#555;line-height:1.65}
.ars2-warn{display:flex;align-items:flex-start;gap:7px;padding:9px 11px;background:#fffbeb;border:1px solid #fcd34d;border-radius:8px;font-size:11.5px;color:#78350f}
.ars2-warn svg{flex-shrink:0;margin-top:1px}
.ars2-params{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:4px}
.ars2-param{background:#f7f6f2;border:1px solid #e8e5de;border-radius:10px;padding:9px 11px}
.ars2-plabel{font-size:10.5px;color:#aaa;margin-bottom:3px}
.ars2-pval{font-size:15px;font-weight:700;color:#111}
/* progress bar */
.ars2-prog{display:flex;align-items:center;gap:12px;padding:12px 20px;border-top:1px solid #eeebe4}
.ars2-bar-bg{flex:1;height:6px;background:#e8e5de;border-radius:3px;overflow:hidden}
.ars2-bar-fill{height:100%;background:#2563EB;border-radius:3px;transition:width .4s ease;width:0%}
.ars2-pct{font-size:12px;color:#888;min-width:36px;text-align:right}
/* done banner */
.ars2-done{display:none;padding:12px 20px;background:#e6f4ec;border-top:1px solid #a7d7b8;text-align:center}
.ars2-done p{font-size:13px;font-weight:700;color:#1a6b3c;margin:0}
/* stats */
.ars2-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid #eeebe4}
.ars2-stat{padding:14px 18px;border-right:1px solid #eeebe4}
.ars2-stat:last-child{border-right:none}
.ars2-slabel{font-size:11px;color:#999;margin-bottom:4px}
.ars2-sval{font-size:22px;font-weight:700;color:#111;line-height:1}
.ars2-ssub{font-size:11px;color:#1a6b3c;margin-top:3px}
/* controls */
.ars2-controls{display:flex;gap:10px;padding:14px 20px;border-top:1px solid #eeebe4;align-items:center}
.ars2-btn{padding:10px 20px;border-radius:12px;font-size:13px;font-weight:600;cursor:pointer;border:1.5px solid #d5d2c9;background:#fff;color:#111;transition:all .15s;font-family:inherit}
.ars2-btn:hover{background:#f5f3ef}
.ars2-btn:disabled{opacity:.35;cursor:not-allowed}
.ars2-btn-primary{background:#111;color:#fff;border-color:#111;flex:1;text-align:center}
.ars2-btn-primary:hover{background:#333}
.ars2-btn-primary:disabled{background:#111}
.ars2-btn-success{background:#e6f4ec;color:#1a6b3c;border-color:#a7d7b8;flex:1}
/* AR simulator - mobile */
@media (max-width: 768px) {
    .ars2-body { grid-template-columns: 1fr; height: auto; }
    .ars2-visual { aspect-ratio: 4 / 3; height: auto; border-right: none; border-bottom: 1px solid #eeebe4; }
    .ars2-instr { padding: 16px 14px; }
    .ars2-steptitle { font-size: 16px; }
    .ars2-stepdetail { font-size: 12px; }
    .ars2-params { grid-template-columns: 1fr 1fr; gap: 6px; }
    .ars2-stats { grid-template-columns: 1fr; }
    .ars2-stat { border-right: none; border-bottom: 1px solid #eeebe4; padding: 10px 16px; display: flex; align-items: center; justify-content: space-between; gap: 12px; }
    .ars2-stat:last-child { border-bottom: none; }
    .ars2-slabel, .ars2-ssub { margin: 0; }
    .ars2-sval { font-size: 18px; }
    .ars2-controls { flex-wrap: wrap; padding: 12px 14px; }
    .ars2-controls .ars2-btn { font-size: 12px; padding: 9px 14px; }
    .ars2-prog { padding: 10px 14px; }
}
@media (max-width: 480px) {
    .ars2-header { padding: 10px 14px; flex-wrap: wrap; gap: 6px; }
    .ars2-meta { font-size: 10px; }
    .ars2-params { grid-template-columns: 1fr; }
    .ars2-controls .ars2-btn-primary,
    .ars2-controls .ars2-btn-success { flex: 1 1 100%; order: -1; }
}

/* ===== SMART MANUFAKTUR DPP INLINE EXTRACTION ===== */
/* ── Photo stage ── */
.dpp-photo-stage{position:relative;width:100%;max-width:460px;margin:0 auto;border-radius:20px;overflow:hidden;box-shadow:0 24px 60px rgba(23,54,93,.14)}
.dpp-dress-photo{width:100%;display:block;border-radius:20px}
.dpp-photo-caption{position:absolute;bottom:0;left:0;width:100%;padding:80px 24px 24px;background:linear-gradient(to top, rgba(0,0,0,0.6) 0%, rgba(0,0,0,0) 100%);color:#fff;pointer-events:none;z-index:5}
.dpp-photo-caption__title{font-family:'Playfair Display', Georgia, serif;font-size:2.2rem;font-weight:700;line-height:1.1;text-shadow:0 2px 4px rgba(0,0,0,0.3)}
.dpp-photo-caption__model{font-family:'Playfair Display', Georgia, serif;font-size:2.2rem;font-style:italic;font-weight:400;line-height:1.1;margin-bottom:12px;text-shadow:0 2px 4px rgba(0,0,0,0.3)}
.dpp-photo-caption__meta{font-family:var(--mono);font-size:0.75rem;letter-spacing:0.05em;opacity:0.9;text-shadow:0 1px 2px rgba(0,0,0,0.3)}
.dpp-qr-hotspot{position:absolute;bottom:31%;left:58%;transform:translateX(-50%);width:13%;aspect-ratio:1;cursor:pointer;border-radius:6px;background:transparent;border:none;z-index:10;transition:transform .2s}
.dpp-qr-hotspot::before{content:'';position:absolute;inset:-7px;border:2px solid #C8925A;border-radius:10px;opacity:0;transition:opacity .25s}
.dpp-qr-hotspot::after{content:'';position:absolute;inset:0;background:#C8925A;border-radius:6px;opacity:0;transition:opacity .25s}
.dpp-qr-hotspot:hover::before{opacity:1}
.dpp-qr-hotspot:hover::after{opacity:.18}
.dpp-qr-hotspot:hover{transform:translateX(-50%) scale(1.06)}
.dpp-scan-label{position:absolute;bottom:calc(31% - 36px);left:58%;transform:translateX(-50%);font-family:var(--mono);font-size:.6rem;font-weight:500;letter-spacing:.08em;color:#fff;background:#C8925A;padding:4px 11px;border-radius:20px;display:flex;align-items:center;gap:5px;pointer-events:none;white-space:nowrap;animation:dpp-float 2.8s ease-in-out infinite;box-shadow:0 4px 12px rgba(200,146,90,.35);z-index:10}
.dpp-scan-dot{width:5px;height:5px;border-radius:50%;background:#fff;animation:dpp-blink 1.6s ease-in-out infinite}
@keyframes dpp-float{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(-4px)}}
@keyframes dpp-blink{0%,100%{opacity:1}50%{opacity:.15}}

/* ── Modal overlay ── */
.dpp-modal-ov{position:fixed;inset:0;background:rgba(0,0,0,.4);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;visibility:hidden;transition:opacity .4s ease,visibility .4s}
.dpp-modal-ov.dpp-open{opacity:1;visibility:visible}
.dpp-modal-box{background:rgba(40,40,40,.65);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,.1);border-radius:12px;width:100%;max-width:850px;max-height:85dvh;overflow-y:auto;transform:scale(0.95) translateY(20px);opacity:0;transition:transform .5s cubic-bezier(.16,1,.3,1), opacity .5s cubic-bezier(.16,1,.3,1);scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent;color:#fff;box-shadow:0 30px 60px rgba(0,0,0,.4);scroll-behavior:smooth}
.dpp-modal-box::-webkit-scrollbar{width:6px}
.dpp-modal-box::-webkit-scrollbar-thumb{background:rgba(255,255,255,.2);border-radius:6px}
.dpp-modal-ov.dpp-open .dpp-modal-box{transform:scale(1) translateY(0);opacity:1}

.dpp-mhead{display:flex;flex-direction:column;align-items:center;padding:30px 24px 20px;border-bottom:1px solid rgba(255,255,255,.1);position:sticky;top:0;background:rgba(40,40,40,.4);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);z-index:2}
.dpp-mhead-title{font-size:3rem;font-weight:700;letter-spacing:.05em;margin-bottom:4px;line-height:1}
.dpp-mhead-subtitle{font-family:var(--mono);font-size:.8rem;font-weight:500;letter-spacing:.15em;color:rgba(255,255,255,.6);text-transform:uppercase}
.dpp-mclose{position:absolute;top:20px;right:20px;width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.05);cursor:pointer;display:grid;place-items:center;transition:background .2s;color:#fff}
.dpp-mclose:hover{background:rgba(255,255,255,.2)}

.dpp-mbody{padding:30px}

/* Hero section */
.dpp-hero{display:flex;gap:24px;align-items:center;margin-bottom:36px;flex-wrap:wrap}
.dpp-hero-qr{flex-shrink:0;width:120px;height:120px;background:#fff;padding:8px;border-radius:12px;display:flex;align-items:center;justify-content:center}
.dpp-hero-info{flex:1}
.dpp-hero-status{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:.7rem;text-transform:uppercase;color:#4CAF50;margin-bottom:8px;font-weight:600}
.dpp-hero-status-dot{width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor}
.dpp-hero-text{font-size:1rem;line-height:1.6;color:rgba(255,255,255,.85)}
.dpp-hero-text strong{color:#fff;font-weight:600}

/* Content Layout */
.dpp-layout{display:grid;grid-template-columns:1fr 200px;gap:40px;align-items:start}
@media(max-width:768px){.dpp-layout{grid-template-columns:1fr}}

/* Tabs */
.dpp-mtabs{display:flex;flex-direction:column;gap:8px}
@media(max-width:768px){.dpp-mtabs{flex-direction:row;overflow-x:auto;padding-bottom:10px}}
.dpp-mtab{text-align:left;padding:12px 16px;border-radius:10px;color:rgba(255,255,255,.5);background:transparent;border:1px solid transparent;cursor:pointer;transition:all .2s;font-size:.9rem;font-family:var(--font)}
@media(max-width:768px){.dpp-mtab{white-space:nowrap}}
.dpp-mtab:hover{color:#fff;background:rgba(255,255,255,.05)}
.dpp-mtab.dpp-ton{color:#fff;background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.15);font-weight:500}

/* Panels */
.dpp-mpanel{display:none}.dpp-mpanel.dpp-ton{display:block;animation:fade-in .4s ease}
@keyframes fade-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}

.dpp-mptitle{font-family:var(--mono);font-size:.6rem;text-transform:uppercase;letter-spacing:.14em;color:rgba(255,255,255,.4);padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:16px}
.dpp-mrow{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.05);font-size:.9rem;gap:12px}
.dpp-mrow:last-child{border-bottom:none}
.dpp-mrlbl{color:rgba(255,255,255,.6);flex-shrink:0}
.dpp-mbadge{display:inline-flex;align-items:center;gap:5px;font-family:var(--mono);font-size:.65rem;font-weight:500;padding:4px 10px;border-radius:20px}
.dpp-mbg{background:rgba(76,175,80,.15);color:#81c784}
.dpp-mbb{background:rgba(33,150,243,.15);color:#64b5f6}
.dpp-mbw{background:rgba(255,152,0,.15);color:#ffb74d}
.dpp-mbdot{width:4px;height:4px;border-radius:50%;background:currentColor}

/* Chain */
.dpp-mchain{display:grid;grid-template-columns:32px 1fr;gap:14px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.05);align-items:start}
.dpp-mchain:last-child{border-bottom:none}
.dpp-mchnum{width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,.1);display:grid;place-items:center;font-family:var(--mono);font-size:.7rem;font-weight:500;color:#fff}
.dpp-mchname{font-size:.95rem;font-weight:600;margin-bottom:4px}
.dpp-mchmeta{font-family:var(--mono);font-size:.7rem;color:rgba(255,255,255,.5)}
.dpp-mchbgs{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}

/* Eco */
.dpp-mecorow{margin-bottom:14px}
.dpp-mecohd{display:flex;justify-content:space-between;font-size:.85rem;margin-bottom:6px}
.dpp-mecolbl{color:rgba(255,255,255,.6)}
.dpp-mecoval{font-family:var(--mono);font-weight:500}
.dpp-mecobg{height:6px;background:rgba(255,255,255,.1);border-radius:3px;overflow:hidden}
.dpp-mecofill{height:100%;border-radius:3px}
.dpp-mecofill--raw{width:44%;background:rgba(255,255,255,.3)}
.dpp-mecofill--standard{width:19%;background:#81c784}
.dpp-mecofill--logistics{width:13%;background:#81c784}
.dpp-mecofill--packaging{width:6%;background:rgba(255,255,255,.15)}
.dpp-mrow--energy{margin-top:20px}

/* Compliance */
.dpp-meubox{background:rgba(33,150,243,.05);border:1px solid rgba(33,150,243,.2);border-radius:14px;padding:20px;margin-bottom:24px}
.dpp-meuttl{font-size:.95rem;font-weight:600;color:#64b5f6;margin-bottom:14px}
.dpp-meuitem{display:flex;align-items:flex-start;gap:12px;font-size:.85rem;padding:8px 0;border-bottom:1px solid rgba(33,150,243,.1);color:rgba(255,255,255,.85)}
.dpp-meuitem:last-child{border-bottom:none}
.dpp-meuchk{width:20px;height:20px;border-radius:50%;background:#64b5f6;display:grid;place-items:center;flex-shrink:0;margin-top:2px}
/* DPP modal — mobile compact */
@media (max-width: 768px) {
    .dpp-modal-ov { padding: 12px; }
    .dpp-modal-box { border-radius: 14px; max-height: 92dvh; }
    .dpp-mhead { padding: 22px 18px 16px; }
    .dpp-mhead-title { font-size: 1.9rem !important; }
    .dpp-mhead-subtitle { font-size: 0.7rem; }
    .dpp-mclose { top: 14px; right: 14px; }
    .dpp-mbody { padding: 20px 18px; }
    .dpp-hero { gap: 16px; margin-bottom: 24px; }
    .dpp-hero-qr { width: 92px; height: 92px; padding: 6px; }
    .dpp-hero-text { font-size: 0.92rem; }
    .dpp-mrow { flex-wrap: wrap; gap: 6px; padding: 10px 0; }
}
@media (max-width: 480px) {
    .dpp-mhead-title { font-size: 1.6rem !important; }
    .dpp-mbody { padding: 18px 14px; }
    .dpp-photo-stage { border-radius: 14px; }
}

/* ===== HOMEPAGE FEATURE CARD INLINE EXTRACTION ===== */
.feature-card { background: var(--white); border-radius: 24px; padding: 32px; border: 2px solid var(--sand-dark); transition: all 0.3s var(--ease); }
.feature-card:hover { transform: translateY(-5px); box-shadow: 0 15px 30px rgba(0,0,0,0.05); }
.feature-card__title { font-size: 1.25rem; font-weight: 700; color: var(--black); margin-bottom: 12px; }
.feature-card__text { color: #555; line-height: 1.6; font-size: 0.95rem; }
@media(max-width:768px){
    /* Feature cards - tighter on mobile so text isn't lost in padding */
    .feature-card{padding:24px;border-radius:20px}
    .feature-card__title{font-size:1.15rem}
}
@media(max-width:480px){
    .feature-card{padding:22px}
}

/* ===== HOMEPAGE HERO MOBILE INLINE EXTRACTION ===== */
@media(max-width:768px){
    /* Hide the shirt artwork on mobile for a cleaner first viewport */
    .hero{
        display:flex !important;
        flex-direction:column !important;
        min-height:auto;
        justify-content:flex-start;
        padding-bottom:44px;
    }
    .hero__bg{order:0}
    .hero__content{order:1;padding:clamp(56px,9vh,96px) 0 clamp(42px,9vh,72px) !important;position:relative;z-index:2}
    /* Hero CTAs stack and span full width - easier to tap on phones */
    .hero__cta-row{flex-direction:column;align-items:stretch;gap:12px}
    .hero__cta-row .pilot-cta{
        text-align:center;
        padding:15px 24px;
        font-size:1rem;
        box-shadow:3px 3px 0 0 var(--orange);
    }
}
@media(max-width:480px){
    /* Very small phones - keep the blouse lifted behind the copy */
    .hero__badge{
        font-size:.7rem !important;
        padding:6px 14px !important;
        margin-bottom:20px !important;
    }
    .hero__title{font-size:clamp(1.85rem,8.5vw,2.4rem) !important;line-height:1.1}
    .hero__sub{font-size:.95rem !important;margin-bottom:28px !important;line-height:1.6}

    .hero__cta-row .pilot-cta{
        padding:14px 20px;
        font-size:.95rem;
    }
}

/* ===== HOMEPAGE PILOT BOX INLINE EXTRACTION ===== */
@media(max-width:768px){
    /* Pilot box - kill the 64px desktop padding on phones */
    .pilot-box{
        padding:36px 24px !important;
        border-radius:20px;
        margin:0 -4px;
    }
    .pilot-box__title{font-size:clamp(1.4rem,5vw,1.9rem) !important}
}
@media(max-width:480px){
    .pilot-box{padding:28px 20px !important}
    .pilot-box__sub{font-size:.95rem !important;margin-bottom:24px !important}
}

/* ===== HOMEPAGE MOBILE OPTIMIZATIONS INLINE EXTRACTION ===== */
@media(max-width:768px){
    /* Dark CTA section heading scales down properly */
    .section--dark h2{font-size:clamp(1.7rem,5.5vw,2.4rem) !important}
    .section--dark .pillar__feat{padding:18px !important;border-radius:14px !important}

    /* Trust section (yellow) inner cards */
    .section[style*="--yellow"] .container > div > div,
    section[style*="background: var(--yellow)"] .container > div > div{
        padding:22px !important;
        border-radius:16px;
    }

}

@media(max-width:480px){
    .section{padding:clamp(56px,10vh,90px) 0}
    .section__title{font-size:1.65rem !important}
    .section__sub{font-size:.95rem !important;margin-bottom:32px !important}

    .section--dark .pillar__features{margin-bottom:32px !important}
}

/* ===== YELLOW SECTION TAG INLINE EXTRACTION ===== */
.section__tag--yellow{color:var(--yellow)}

/* ===== COOKIE NOTICE ===== */
.cookie-notice{
    position:fixed;
    left:50%;
    right:auto;
    bottom:22px;
    transform:translateX(-50%);
    z-index:1200;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    width:min(920px, calc(100vw - 40px));
    padding:16px 18px;
    background:rgba(255,255,255,.72);
    border:1px solid rgba(255,255,255,.62);
    border-radius:20px;
    box-shadow:0 18px 54px rgba(48,67,95,.18), inset 0 1px 0 rgba(255,255,255,.55);
    backdrop-filter:blur(18px) saturate(1.1);
    -webkit-backdrop-filter:blur(18px) saturate(1.1);
}
.cookie-notice--hidden{display:none}
.cookie-notice__copy{min-width:0}
.cookie-notice__title{font-weight:800;color:rgba(18,28,45,.92);margin-bottom:3px}
.cookie-notice__text{font-size:.88rem;line-height:1.55;color:rgba(48,67,95,.78)}
.cookie-notice__text a{color:var(--black);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.cookie-notice__button{
    flex:0 0 auto;
    border:1px solid rgba(255,255,255,.32);
    border-radius:999px;
    padding:11px 18px;
    background:rgba(18,28,45,.92);
    color:var(--white);
    font:700 .9rem var(--font);
    cursor:pointer;
    box-shadow:0 10px 28px rgba(18,28,45,.18);
    transition:transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.cookie-notice__button:hover{transform:translateY(-1px);background:rgba(18,28,45,1);box-shadow:0 14px 32px rgba(18,28,45,.22)}
@media(max-width:640px){
    .cookie-notice{
        bottom:12px;
        width:calc(100vw - 24px);
        flex-direction:column;
        align-items:flex-start;
        padding:15px;
    }
    .cookie-notice__button{width:100%}
}
