/* AIRA — home.css · лише унікальні стилі головної. Спільні компоненти — у site.css. */

  * { margin:0; padding:0; box-sizing:border-box; }
  html, body {
    height:100%; width:100%;
    font-family:'Inter',sans-serif;
    background:#fff; color:#1a1a1a;
    overflow-x:hidden;
  }

  /* NAV — десктоп */
  nav {
    display:flex; align-items:center; justify-content:space-between;
    padding:18px 56px;
    border-bottom:1px solid #eee;
    gap:24px;
  }
  .main {
    display:grid;
    grid-template-columns:44% 56%;
    grid-template-rows:1fr;
    height:calc(100vh - 65px);
    overflow:hidden;
  }
  .left {
    padding:60px 56px;
    display:flex; flex-direction:column; justify-content:flex-start;
  }
  .left h1 { font-family:'Space Grotesk',sans-serif; font-size:56px; font-weight:500; line-height:1.05; letter-spacing:-1.5px; margin-bottom:24px; animation:fadeUp .8s ease both; }
  .left .sub { font-size:17px; color:#333; line-height:1.6; margin-bottom:16px; animation:fadeUp .8s .1s ease both; }
  .left .target { font-size:17px; color:#c47a2e; margin-bottom:48px; animation:fadeUp .8s .2s ease both; }
  .left .quote { font-size:14px; color:#555; line-height:1.7; border-left:2px solid #c47a2e; padding-left:20px; max-width:380px; animation:fadeUp .8s .3s ease both; }

  @keyframes fadeUp { from { opacity:0; transform:translateY(14px); } to { opacity:1; transform:translateY(0); } }

  /* ── Scroll-reveal (navkolonas-style) ── */
  .reveal {
    opacity:0;
    transform:translateY(24px);
    transition:opacity .9s cubic-bezier(.22,.61,.36,1), transform .9s cubic-bezier(.22,.61,.36,1);
  }  @media (prefers-reduced-motion: reduce) {
    .reveal { opacity:1; transform:none; transition:none; }
  }
  @media (prefers-reduced-motion: reduce) { .left h1, .left .sub, .left .target, .left .quote { animation:none; } }

  .right { padding:24px 56px 24px 24px; display:flex; flex-direction:column; height:100%; min-height:0; box-sizing:border-box; }
  .video-wrap { border-radius:16px; overflow:hidden; background:#f0ede8; position:relative; flex:1; min-height:0; }
  .video-wrap video { width:100%; height:100%; object-fit:cover; object-position:center top; display:block; }
  .thumbs { display:grid; grid-template-columns:1fr 1fr; gap:16px; height:180px; }
  .thumb { border-radius:12px; overflow:hidden; background:#e8e0d5; }
  .thumb img { width:100%; height:100%; object-fit:cover; }

  /* Coming Soon — десктоп */
  .cs-badge {
    position:fixed; top:50%; left:50%;
    transform:translate(-50%,-50%);
    background:rgba(255,255,255,.92);
    backdrop-filter:blur(16px);
    -webkit-backdrop-filter:blur(16px);
    border:1px solid rgba(255,255,255,.9);
    border-radius:14px;
    padding:32px 56px;
    text-align:center;
    box-shadow:0 8px 40px rgba(0,0,0,.1);
    z-index:10;
  }
  .cs-line { width:28px; height:1px; background:#c47a2e; margin:0 auto 18px; }
  .sep { color:#ccc; font-size:10px; pointer-events:none; }
  .cs-text { font-size:11px; font-weight:400; letter-spacing:5px; text-transform:uppercase; color:#999; }

  /* ── MOBILE ── */
  @media (max-width: 768px) {
    html, body { overflow-x:hidden; }

    nav {
      padding:14px 16px;
      flex-direction:row;
      align-items:center;
      gap:12px;
    }
    .logo img { height:16px; }
    .logo-svg { height:16px; width:auto; }
    /* Навігація в один рядок */
    nav ul {
      flex:1;
      min-width:0;
      display:flex;
      align-items:baseline;
      justify-content:flex-end;
      gap:2px;
      flex-wrap:nowrap;
      overflow-x:auto;
    }
    nav ul li {
      display:flex;
      align-items:baseline;
      line-height:1;
    }
    nav ul .sep {
      color:#ccc;
      font-size:8px;
      line-height:1;
    }
    nav ul::-webkit-scrollbar { display:none; }
    nav ul li a { text-transform:uppercase; letter-spacing:0.3px; font-size:8px; white-space:nowrap; font-weight:400; color:#1a1a1a; }

    .main {
      grid-template-columns:1fr;
      grid-template-rows:auto auto;
      height:auto;
    }
    .left {
      padding:16px 16px 0;
      gap:6px;
    }
    .left h1 { font-size:30px; margin-bottom:8px; letter-spacing:-1px; }
    .left .sub { font-size:13px; margin-bottom:4px; }
    .left .target { font-size:13px; }
    .left .quote { display:none; }

    .right {
      padding:0 16px 14px;
      height:auto;
    }
    .video-wrap { border-radius:12px; height:420px; }

    /* Coming Soon — мобільний: нижче тексту, не перекриває */
    .cs-badge {
      position:fixed;
      top:auto;
      bottom:110px;
      left:50%;
      transform:translateX(-50%);
      padding:16px 36px;
      border-radius:12px;
      width:auto;
      white-space:nowrap;
    }
    .cs-line { margin-bottom:10px; }
    .sep { color:#ccc; font-size:8px; pointer-events:none; }
  .cs-text { font-size:10px; letter-spacing:4px; }
  }

  /* ── SECTIONS ── */
  .s-white { background:#fff; color:#1a1a1a; }
  .s-black { background:#111; color:#fff; }

  .s-inner {
    display:grid;
    grid-template-columns:120px 1fr;
    gap:40px;
    padding:80px 56px;
    max-width:1400px;
    margin:0 auto;
  }

  .s-num {
    font-family:'Space Grotesk',sans-serif;
    font-size:96px;
    font-weight:400;
    line-height:1;
    letter-spacing:-3px;
    color:#e8e4de;
    padding-top:4px;
    flex-shrink:0;
  }
  .s-black .s-num { color:#333333; }

  .s-tag {
    display:block;
    font-size:11px;
    font-weight:400;
    letter-spacing:3px;
    text-transform:uppercase;
    color:#c47a2e;
    margin-bottom:20px;
  }

  .s-content h2 {
    font-family:'Space Grotesk',sans-serif;
    font-size:44px;
    font-weight:500;
    line-height:1.15;
    letter-spacing:-1.2px;
    margin-bottom:24px;
  }

  .s-content p {
    font-size:15px;
    line-height:1.85;
    color:#555;
    max-width:520px;
    font-weight:300;
  }

  .s-content .rhythm {
    margin-top:36px;
    font-size:15px;
    line-height:1.9;
    color:#333;
    font-weight:300;
  }
  .s-content .rhythm .accent { color:#c47a2e; font-weight:500; }
  .s-black .s-content .rhythm { color:#bbb; }
  .s-black .s-content .rhythm .accent { color:#c47a2e; }
  .s-black .s-content p { color:#888; }
  .final-accent {
    color:#B87932 !important;
    font-weight:500 !important;
    font-family:'Inter',sans-serif !important;
  }

  /* Філософія — editorial single-column */
  .section-philosophy {
    background:#ffffff;
    color:#171717;
    padding:120px 0 140px;
  }
  .philosophy-inner {
    max-width:1440px;
    margin:0 auto;
    padding:0 72px;
    display:grid;
    grid-template-columns:220px minmax(0,760px) 1fr;
    column-gap:72px;
    align-items:start;
    box-sizing:border-box;
  }
  .philosophy-number {
    grid-column:1;
    font-family:'Space Grotesk',sans-serif;
    font-size:clamp(96px,9vw,150px);
    line-height:0.85;
    font-weight:300;
    color:#e8e6e1;
    letter-spacing:-0.04em;
  }
  .philosophy-content { grid-column:2; }
  .philosophy-label {
    display:block;
    font-size:13px;
    line-height:1;
    letter-spacing:0.28em;
    text-transform:uppercase;
    color:#B87932;
    margin-bottom:34px;
  }
  .philosophy-title {
    font-family:'Space Grotesk',sans-serif;
    font-size:clamp(42px,4vw,64px);
    line-height:1.12;
    font-weight:500;
    letter-spacing:-0.03em;
    margin:0 0 64px;
    max-width:760px;
  }
  .philosophy-body {
    max-width:620px;
    font-size:17px;
    line-height:1.75;
    color:#666666;
    font-weight:300;
  }
  .philosophy-body p { margin:0 0 34px; }
  .philosophy-body p:last-child { margin-bottom:0; }
  .philosophy-body .accent { color:#B87932; font-weight:500; }

  /* Формула */
  .formula-steps {
    display:flex;
    align-items:flex-start;
    gap:0;
    margin-top:40px;
    flex-wrap:wrap;
  }
  .f-step { flex:1; min-width:140px; }
  .f-step-name {
    font-size:18px;
    font-weight:500;
    color:#fff;
    margin-bottom:8px;
  }
  .f-step-desc {
    font-size:13px;
    color:#888;
    line-height:1.6;
  }
  .f-arrow {
    font-size:20px;
    color:#c47a2e;
    padding:0 16px;
    padding-top:2px;
    flex-shrink:0;
  }

  /* Портфоліо */
  .portfolio-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
    margin-top:40px;
  }
  .portfolio-img {
    aspect-ratio:3/4;
    background:#e8e0d5;
    border-radius:8px;
    margin-bottom:16px;
  }
  .portfolio-label {
    font-size:15px;
    font-weight:500;
    margin-bottom:4px;
  }
  .portfolio-sub {
    font-size:13px;
    color:#888;
  }

  /* До/Після */
  .ba-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px;
    margin-top:40px;
  }
    .ba-label-wrap { display:flex; align-items:center; gap:12px; }
  .ba-label {
    font-size:11px;
    letter-spacing:3px;
    text-transform:uppercase;
    color:#888;
  }
  .ba-line { flex:1; height:1px; background:#333; }

  /* Для кого */
  .s-whom .s-inner { column-gap:56px; }
  .s-whom .s-content {
    display:grid;
    grid-template-columns:1.3fr 1fr;
    column-gap:40px;
    align-items:start;
  }
  .whom-left { padding-top:2px; }
  .whom-left .s-tag { margin-bottom:32px; }
  .whom-right { max-width:460px; margin-top:44px; }
  .whom-title {
    max-width:600px;
    font-size:clamp(32px,3.6vw,44px) !important;
    line-height:1.18 !important;
    letter-spacing:-0.02em !important;
    margin-bottom:0 !important;
  }
  .whom-body { max-width:640px; }
  .whom-body p {
    font-size:17px;
    line-height:1.8;
    color:#555;
    font-weight:300;
    margin-bottom:30px;
  }
  .whom-rhythm {
    font-size:17px !important;
    color:#555 !important;
    line-height:1.8 !important;
    font-weight:300 !important;
  }
  .whom-final { margin-bottom:0 !important; }
  .whom-accent { color:#B87932; font-weight:500; }
  .whom-niches {
    margin-top:52px;
    padding-top:24px;
    border-top:1px solid #e8e4de;
    display:flex;
    flex-wrap:wrap;
    column-gap:16px;
    row-gap:10px;
    font-size:12px;
    letter-spacing:.06em;
    color:#9A9A9A;
    max-width:720px;
  }
  .whom-niches span { position:relative; }

  /* CTA */
  .s-cta .s-inner {
    grid-template-columns:1fr;
    text-align:left;
    padding:100px 56px;
  }
  .s-cta .s-num { font-size:72px; margin-bottom:32px; }
  .s-cta h2 { font-size:52px; margin-bottom:20px; }
  .s-cta p { color:#888; max-width:480px; margin-bottom:40px; }
  .cta-row { display:flex; align-items:center; gap:40px; flex-wrap:wrap; }
  .cta-btn {
    display:inline-block;
    border:1px solid #fff;
    color:#fff;
    background:transparent;
    text-decoration:none;
    font-family:'Inter',sans-serif;
    font-size:13px;
    letter-spacing:1px;
    padding:16px 36px;
    border-radius:4px;
    cursor:pointer;
    transition:background .5s ease, color .5s ease, letter-spacing .5s ease;
  }
  .cta-btn:hover { background:#fff; color:#111; letter-spacing:2px; }

  /* Footer */
  footer {
    background:#111;
    border-top:1px solid #222;
    padding:40px 56px;
  }
  /* ── MOBILE SECTIONS ── */
  @media (max-width:768px) {
    .s-inner {
      grid-template-columns:1fr;
      padding:56px 20px;
      gap:16px;
    }
    .s-num { font-size:56px; }
    .s-content h2 { font-size:28px; }
    .whom-title { font-size:31px !important; margin-bottom:28px !important; }
    .s-whom .s-content { grid-template-columns:1fr; column-gap:0; }
    .whom-left { padding-top:0; }
    .whom-left .s-tag { margin-bottom:20px; }
    .s-whom .s-inner { column-gap:16px; }
    .whom-title { max-width:none; }
    .whom-right { max-width:none; margin-top:0; }
    .whom-body p {
      font-size:14px;
      line-height:1.65;
      color:#777;
      font-weight:300;
      margin-bottom:22px;
    }
    .whom-rhythm {
      font-size:14px !important;
      color:#777 !important;
      line-height:1.65 !important;
      font-weight:300 !important;
    }
    .whom-niches {
      column-gap:11px;
      row-gap:11px;
      margin-top:30px;
      padding-top:18px;
      font-size:11px;
      letter-spacing:.03em;
      color:#8F8F8F;
      line-height:1.5;
    }
    .section-philosophy { padding:64px 0 72px; }
    .philosophy-inner {
      grid-template-columns:1fr;
      padding:0 16px;
      column-gap:0;
    }
    .philosophy-number {
      font-size:56px;
      margin-bottom:16px;
    }
    .philosophy-content { grid-column:1; }
    .philosophy-label { margin-bottom:16px; }
    .philosophy-title { font-size:26px; margin-bottom:24px; }
    .philosophy-body { font-size:15px; line-height:1.7; max-width:none; }
    .philosophy-body p { margin-bottom:20px; }
    .formula-steps { flex-direction:column; gap:20px; }
    .f-arrow { display:none; }
    .portfolio-grid { grid-template-columns:1fr; gap:32px; }
    .ba-grid { grid-template-columns:1fr; }
    .whom-grid { grid-template-columns:1fr; }
    .whom-item { border-right:none; border-bottom:1px solid #e8e4de; padding:20px 0; }
    .whom-item:last-child { border-bottom:none; }
    .s-cta .s-inner { padding:60px 20px; }
    .s-cta h2 { font-size:32px; }
    footer { padding:32px 20px; }
    .footer-inner { flex-direction:column; align-items:flex-start; gap:24px; }
    .footer-copy { text-align:left; }
  }

  /* Burger — базові стилі поза медіа-запитом */
  .mob-menu {
    display:none;
    position:fixed;
    top:0; left:0; right:0; bottom:0;
    background:#fff;
    z-index:9999;
    overflow-y:auto;
    box-sizing:border-box;
  }  .mob-menu-cta {
    display:flex;
    align-items:center;
    justify-content:center;
    background:#171717;
    color:#fff;
    font-family:'Inter',sans-serif;
    font-size:14px; font-weight:400;
    letter-spacing:1.5px;
    text-transform:uppercase;
    text-decoration:none;
    padding:20px 24px;
    border-radius:12px;
    min-height:56px;
    box-sizing:border-box;
  }  @media(max-width:768px){
    .desk-nav { display:none !important; }
    .burger {
      display:flex; flex-direction:column; justify-content:space-between;
      width:22px; height:16px; background:none; border:none;
      cursor:pointer; padding:0; margin-left:auto;
    }
    .burger span { display:block; width:100%; height:1.5px; background:#1a1a1a; transition:all .3s; }
  }
  @media(min-width:769px){ .burger { display:none !important; } }

  /* ── Scroll hint line (navkolonas-style) ── */
  .scroll-hint {
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:10px;
    padding:8px 0 36px;
    background:#fff;
  }
  .scroll-hint-label {
    font-size:10px;
    letter-spacing:3px;
    text-transform:uppercase;
    color:#bbb;
    font-weight:400;
  }
  .scroll-hint-line {
    width:1px;
    height:48px;
    background:#e5e0d8;
    position:relative;
    overflow:hidden;
  }
  .scroll-hint-line::after {
    content:'';
    position:absolute;
    top:-40%;
    left:0;
    width:100%;
    height:40%;
    background:#B87932;
    animation:scrollDrop 2.2s cubic-bezier(.65,0,.35,1) infinite;
  }
  @keyframes scrollDrop {
    0% { top:-40%; }
    60% { top:100%; }
    100% { top:100%; }
  }
  @media (prefers-reduced-motion: reduce) {
    .scroll-hint-line::after { animation:none; }
  }
  @media(max-width:768px){
    .scroll-hint { padding:4px 0 24px; }
    .scroll-hint-line { height:36px; }
  }

  /* ── SPA views ── */
  .view{display:none;}
  .view.active{display:block;}

  /* ── Page hero ── */
  .page-hero{max-width:1440px;margin:0 auto;padding:90px 72px 20px;}
  .page-label{display:block;font-size:13px;letter-spacing:.28em;text-transform:uppercase;color:#B87932;margin-bottom:28px;}
  .page-title{font-family:'Space Grotesk',sans-serif;font-size:clamp(42px,5vw,70px);line-height:1.08;font-weight:500;letter-spacing:-0.03em;max-width:920px;margin-bottom:28px;}
  .page-sub{font-size:18px;line-height:1.7;color:#666;font-weight:300;max-width:560px;}

  /* ── Editorial sections (subpages) ── */
  .ed{padding:100px 0 110px;}
  .ed-white{background:#fff;color:#171717;}
  .ed-dark{background:#111;color:#fff;}
  .ed-inner{max-width:1440px;margin:0 auto;padding:0 72px;display:grid;grid-template-columns:220px minmax(0,860px) 1fr;column-gap:72px;align-items:start;}
  .ed-num{font-family:'Space Grotesk',sans-serif;font-size:clamp(80px,8vw,130px);line-height:.85;font-weight:300;color:#e8e6e1;letter-spacing:-0.04em;}
  .ed-dark .ed-num{color:#333333;}
  .ed-content{grid-column:2;}
  .ed-label{display:block;font-size:12px;letter-spacing:.28em;text-transform:uppercase;color:#B87932;margin-bottom:26px;}
  .ed-title{font-family:'Space Grotesk',sans-serif;font-size:clamp(30px,3.2vw,46px);line-height:1.15;font-weight:500;letter-spacing:-0.02em;margin-bottom:34px;max-width:760px;}
  .ed-body{max-width:640px;font-size:16px;line-height:1.8;color:#666;font-weight:300;}
  .ed-dark .ed-body{color:#999;}
  .ed-body p{margin-bottom:26px;}
  .ed-body p:last-child{margin-bottom:0;}
  .ed-body .accent{color:#B87932;font-weight:500;}
  .ed-list{list-style:none;max-width:640px;padding:0;}
  .ed-list li{font-size:16px;line-height:1.7;color:#666;font-weight:300;padding:14px 0;border-bottom:1px solid #E6E2DA;}
  .ed-dark .ed-list li{color:#999;border-color:#2a2a2a;}
  .ed-note{margin-top:28px;font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:#bbb;}
  .ed-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#E6E2DA;border:1px solid #E6E2DA;max-width:920px;}
  .ed-dark .ed-grid{background:#2a2a2a;border-color:#2a2a2a;}
  .ed-grid-item{background:#fff;padding:32px 28px;}
  .ed-dark .ed-grid-item{background:#111;}
  .ed-grid-item h3{font-family:'Space Grotesk',sans-serif;font-size:18px;font-weight:500;margin-bottom:10px;letter-spacing:-.2px;}
  .ed-grid-item p{font-size:14px;line-height:1.7;color:#888;font-weight:300;}
  .wr{display:grid;grid-template-columns:1fr 1fr;gap:56px;max-width:920px;}
  .wr h4{font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:#B87932;margin-bottom:14px;font-weight:400;}
  .wr ul{list-style:none;padding:0;}
  .wr li{font-size:15px;line-height:1.7;font-weight:300;color:#666;padding:11px 0;border-bottom:1px solid #E6E2DA;}
  .ed-dark .wr li{color:#999;border-color:#2a2a2a;}
  .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:36px;max-width:1000px;}
  .step-num{font-family:'Space Grotesk',sans-serif;font-size:14px;color:#B87932;margin-bottom:12px;letter-spacing:1px;}
  .step-name{font-family:'Space Grotesk',sans-serif;font-size:20px;font-weight:500;margin-bottom:8px;letter-spacing:-.3px;}
  .step-desc{font-size:14px;line-height:1.6;color:#888;font-weight:300;}
  .packs{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#E6E2DA;border:1px solid #E6E2DA;max-width:1100px;}
  .pack{background:#fff;padding:44px 36px;display:flex;flex-direction:column;}
  .pack-name{font-size:13px;letter-spacing:.28em;text-transform:uppercase;color:#B87932;margin-bottom:18px;}
  .pack-for{font-size:15px;line-height:1.6;color:#171717;font-weight:400;margin-bottom:26px;min-height:72px;}
  .pack ul{list-style:none;flex:1;margin-bottom:32px;padding:0;}
  .pack ul li{font-size:14px;line-height:1.6;color:#666;font-weight:300;padding:10px 0;border-bottom:1px solid #F0EDE7;}
  .pack-price{font-family:'Space Grotesk',sans-serif;font-size:32px;font-weight:500;letter-spacing:-.5px;}
  .pack-price span{display:block;font-family:'Inter',sans-serif;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:#bbb;margin-bottom:8px;font-weight:400;}
  .price-row{display:flex;gap:72px;margin-top:44px;}
  .price-item .pi-label{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:#777;margin-bottom:10px;}
  .price-item .pi-value{font-family:'Space Grotesk',sans-serif;font-size:40px;font-weight:500;letter-spacing:-1px;color:#fff;}
  .ed-cta{background:#111;color:#fff;}
  .ed-cta .ed-inner{grid-template-columns:1fr;padding:100px 72px;}
  .ed-cta h2{font-family:'Space Grotesk',sans-serif;font-size:clamp(34px,4vw,52px);font-weight:500;letter-spacing:-.03em;line-height:1.12;margin-bottom:20px;max-width:760px;}
  .ed-cta p{color:#888;max-width:480px;margin-bottom:40px;font-weight:300;font-size:16px;line-height:1.7;}

  @media(max-width:768px){
    .page-hero{padding:44px 16px 12px;}
    .page-title{font-size:32px;margin-bottom:18px;}
    .page-sub{font-size:15px;}
    .ed{padding:56px 0 64px;}
    .ed-inner{grid-template-columns:1fr;padding:0 16px;column-gap:0;}
    .ed-num{font-size:56px;margin-bottom:14px;}
    .ed-content{grid-column:1;}
    .ed-title{font-size:26px;margin-bottom:22px;}
    .ed-body{font-size:15px;}
    .ed-grid{grid-template-columns:1fr;}
    .wr{grid-template-columns:1fr;gap:30px;}
    .steps{grid-template-columns:1fr !important;gap:24px;}
    .packs{grid-template-columns:1fr;}
    .pack-for{min-height:0;}
    .price-row{gap:40px;flex-wrap:wrap;}
    .price-item .pi-value{font-size:32px;}
    .ed-cta .ed-inner{padding:60px 16px;}
  }

  /* ══ MOTION LAYER (navkolonas-style) ══ */

  /* 1. View transitions — fade+lift on every section switch */
  .view.active{animation:viewIn .55s cubic-bezier(.22,.61,.36,1) both;}
  @keyframes viewIn{from{opacity:0;transform:translateY(12px);}to{opacity:1;transform:none;}}

  /* 2. Hero video entrance — joins the text stagger */
  .right{animation:fadeUp .9s .35s ease both;}

  /* 3a. Grid cards hover — lift + tone shift */
  .ed-grid-item{transition:transform .45s ease, background .45s ease;}
  .ed-grid-item:hover{transform:translateY(-4px);}
  .ed-white .ed-grid-item:hover{background:#FAF8F4;}
  .ed-dark .ed-grid-item:hover{background:#181818;}

  /* 3b. Package cards hover — lift, price turns gold */
  .pack{transition:transform .45s ease;}
  .pack-price{transition:color .45s ease;}
  .pack:hover{transform:translateY(-5px);}
  .pack:hover .pack-price{color:#B87932;}

  /* 3c. Hero video — slow cinematic zoom on hover */
  .video-wrap video{transition:transform 2.2s cubic-bezier(.22,.61,.36,1);}
  .video-wrap:hover video{transform:scale(1.045);}

  /* 4. Mobile menu — staggered cascade entrance */
  .mob-menu.open{animation:menuIn .35s ease both;}
  @keyframes menuIn{from{opacity:0;}to{opacity:1;}}  @keyframes menuItem{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:none;}}
  .mob-menu-cta{transition:background .5s ease;}
  /* 5. Nav links — gold underline grows on hover / active */
  .desk-nav li a{position:relative;padding-bottom:4px;}
  .desk-nav li a::after{content:'';position:absolute;left:0;bottom:0;width:0;height:1px;background:#B87932;transition:width .45s cubic-bezier(.22,.61,.36,1);}
  /* Reduced motion — disable all decorative animation */
  @media (prefers-reduced-motion: reduce){
    .view.active,.right,.mob-menu.open,.mob-menu.open ul li,
    .mob-menu.open .mob-menu-brand,.mob-menu.open .mob-menu-cta{animation:none !important;opacity:1;transform:none;}
    .video-wrap video,.ed-grid-item,.pack,.desk-nav li a::after{transition:none;}
    .video-wrap:hover video{transform:none;}
  }

  /* ── Brand strip (social proof) ── */
  .brand-strip{display:flex;flex-wrap:wrap;gap:10px 12px;margin-top:32px;max-width:720px;}
  .brand-strip span{font-family:'Space Grotesk',sans-serif;font-size:13px;letter-spacing:.5px;color:#999;border:1px solid #E6E2DA;border-radius:100px;padding:7px 16px;transition:border-color .4s ease,color .4s ease;}
  .brand-strip span:hover{border-color:#B87932;color:#B87932;}

  /* ── Package CTA button ── */
  .pack-btn{display:block;text-align:center;margin-top:24px;padding:14px;border:1px solid #171717;border-radius:8px;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:#171717;transition:background .4s ease,color .4s ease;}
  .pack-btn:hover{background:#171717;color:#fff;}
  .pack-btn-filled{background:#171717;color:#fff;}
  .pack-btn-filled:hover{background:#B87932;border-color:#B87932;}

  /* ── Featured (recommended) package ── */
  .pack-featured{position:relative;box-shadow:0 0 0 2px #B87932;z-index:1;}
  .pack-badge{position:absolute;top:0;left:50%;transform:translate(-50%,-50%);background:#B87932;color:#fff;font-size:10px;letter-spacing:1.5px;text-transform:uppercase;padding:5px 14px;border-radius:100px;white-space:nowrap;}

  @media(max-width:768px){
    .pack-featured{box-shadow:0 0 0 2px #B87932;}
    .brand-strip{gap:8px;}
    .brand-strip span{font-size:12px;padding:6px 13px;}
  }
  /* ── Lead form modal ── */
  .lead-overlay {
    display:none;
    position:fixed; inset:0;
    background:rgba(10,10,10,.6);
    z-index:10000;
    align-items:center;
    justify-content:center;
    padding:20px;
    box-sizing:border-box;
  }  @media(max-width:768px){
    .lead-modal { padding:32px 24px; }
    .lead-title { font-size:19px; }
  }

/* ── layer ── */

/* ═══════════ AIRA CREATIVE CONCEPT v1 ═══════════ */

::selection { background:#B87932; color:#fff; }
html { scroll-behavior:smooth; }

/* — Scroll progress hairline — */
.scroll-progress{position:fixed;top:0;left:0;height:2px;width:0;background:#B87932;z-index:10001;}

/* — Sticky nav with blur (blur на ::before, щоб не ламати fixed мобільне меню) — */
nav{
  position:sticky;top:0;z-index:1000;
  background:transparent;
  border-bottom:1px solid rgba(0,0,0,0);
  transition:border-color .4s ease;
}
nav::before{
  content:'';
  position:absolute;inset:0;
  background:rgba(255,255,255,.82);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  z-index:-1;
  transition:background .4s ease;
}/* нейтралізую старий hover-zoom, щоб не конфліктував з базовим scale паралакса */
.video-wrap:hover video{transform:scale(1.06);}

/* — Nav links: gold underline grows — */
.desk-nav li a{position:relative;padding-bottom:4px;}
.desk-nav li a::after{
  content:'';position:absolute;left:0;bottom:0;
  width:0;height:1px;background:#B87932;
  transition:width .45s cubic-bezier(.22,.61,.36,1);
}
.desk-nav li a:hover::after{width:100%;}

/* — Hero refinement — */
.hero-eyebrow{
  display:block;
  font-size:11px;letter-spacing:.3em;text-transform:uppercase;
  color:#B87932;margin-bottom:22px;
  animation:fadeUp .7s ease both;
}
.left h1{
  font-size:clamp(38px,4.3vw,58px);
  line-height:1.07;letter-spacing:-0.035em;
  animation:fadeUp .8s .1s ease both;
}
.left .sub{animation:fadeUp .8s .22s ease both;}
.left .target{animation:fadeUp .8s .32s ease both;}
.left .quote{animation:fadeUp .8s .42s ease both;}
.right{animation:fadeUp .9s .5s ease both;}
.video-wrap{border-radius:20px;}
.video-wrap::after{
  content:'';position:absolute;inset:0;border-radius:20px;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.06);
  pointer-events:none;
}
.video-wrap video{transform:scale(1.06);}

/* — Unified section rhythm — */
.s-inner{padding:130px 56px;}
.section-philosophy{padding:130px 0 140px;}

/* — Typography pass — */
.s-content h2{font-size:clamp(32px,3.4vw,46px);line-height:1.14;letter-spacing:-0.025em;}
.s-tag,.philosophy-label{font-size:11px;letter-spacing:.3em;}
.s-num,.philosophy-number{font-weight:300;}

/* — Section content stagger (children cascade after reveal) — */
.s-content.reveal .s-tag,
.s-content.reveal h2,
.s-content.reveal p,
.s-content.reveal .formula-steps,
.s-content.reveal .portfolio-grid,
.s-content.reveal .ba-grid,
.s-content.reveal .whom-niches,
.s-content.reveal .cta-btn{
  opacity:0;transform:translateY(18px);
  transition:opacity .9s cubic-bezier(.22,.61,.36,1),transform .9s cubic-bezier(.22,.61,.36,1);
}
.s-content.reveal.in-view .s-tag{opacity:1;transform:none;transition-delay:.05s;}
.s-content.reveal.in-view h2{opacity:1;transform:none;transition-delay:.15s;}
.s-content.reveal.in-view p{opacity:1;transform:none;transition-delay:.28s;}
.s-content.reveal.in-view .formula-steps,
.s-content.reveal.in-view .portfolio-grid,
.s-content.reveal.in-view .ba-grid{opacity:1;transform:none;transition-delay:.38s;}
.s-content.reveal.in-view .whom-niches{opacity:1;transform:none;transition-delay:.45s;}
.s-content.reveal.in-view .cta-btn{opacity:1;transform:none;transition-delay:.42s;}

/* — Portfolio: cinematic hover — */

/* — Dark CTA: ultra-subtle warm glow — */
.s-cta{position:relative;overflow:hidden;}
.s-cta::before{
  content:'';position:absolute;top:-30%;left:-10%;
  width:60%;height:130%;
  background:radial-gradient(closest-side, rgba(184,121,50,.07), transparent 70%);
  pointer-events:none;
}
.s-cta .s-inner{position:relative;z-index:1;}

/* — Footer breathing — */
footer{padding:44px 56px;}

/* — Accessible focus — */
a:focus-visible,button:focus-visible{outline:2px solid #B87932;outline-offset:3px;border-radius:4px;}

/* — Reduced motion — */
@media (prefers-reduced-motion: reduce){
  .hero-eyebrow,.left h1,.left .sub,.left .target,.left .quote,.right{animation:none;}
  .s-content.reveal .s-tag,.s-content.reveal h2,.s-content.reveal p,
  .s-content.reveal .formula-steps,.s-content.reveal .portfolio-grid,
  .s-content.reveal .ba-grid,.s-content.reveal .whom-niches,
  .s-content.reveal .cta-btn{opacity:1;transform:none;transition:none;}
  .pf-media img{transition:none;}
  .pf-media:hover img{transform:none;}
  .video-wrap video{transform:none;}
  .scroll-progress{display:none;}
  html{scroll-behavior:auto;}
}

/* — Mobile guards — */
@media(max-width:768px){
  .s-inner{padding:56px 20px;}
  .section-philosophy{padding:64px 0 72px;}
  .hero-eyebrow{font-size:10px;letter-spacing:.24em;margin-bottom:14px;}
  .left h1{font-size:31px;}
  footer{padding:28px 16px;}
  .video-wrap video{transform:none;}
}

/* ── layer ── */

/* ═══════════ AIRA CREATIVE v2 — REFINEMENT LAYER ═══════════ */
/* Мета: не ефектність — системність і дорогість. */

/* — 2.1 Єдине золото по всьому сайту (#B87932) — */
.s-tag{color:#B87932;}
.left .target{color:#B87932;}
.left .quote{border-left-color:#B87932;}
.cs-line{background:#B87932;}
.s-content .rhythm .accent{color:#B87932;}
.s-black .s-content .rhythm .accent{color:#B87932;}

/* — 2.2 Прогрес-лінія: тонша і тихіша — */
.scroll-progress{height:1px;background:rgba(184,121,50,.8);}

/* — 2.3 Секція 01 = та сама система, що 02–06 — */
.philosophy-inner{
  grid-template-columns:120px 1fr;
  column-gap:40px;
  padding:0 56px;
  max-width:1400px;
}
.philosophy-number{
  font-size:96px;
  letter-spacing:-3px;
  line-height:1;
  padding-top:4px;
  font-weight:300;
}
.philosophy-label{
  font-size:11px;
  letter-spacing:.3em;
  margin-bottom:20px;
}
.philosophy-title{
  font-size:clamp(32px,3.4vw,46px);
  line-height:1.14;
  letter-spacing:-0.025em;
  margin-bottom:24px;
  max-width:none;
}
.philosophy-body{max-width:640px;}

/* — 2.4 Hero: вертикальний оптичний баланс (desktop) — */
@media(min-width:769px){
  .left{justify-content:center;padding-top:40px;padding-bottom:56px;}
}

/* — 2.5 До/Після: те саме кінематографічне оформлення, що портфоліо — */

/* — 2.6 Scroll-hint: живий, клікабельний — */
.scroll-hint{cursor:pointer;transition:opacity .4s ease;}
.scroll-hint:hover{opacity:.75;}

/* — 2.7 Темний фінал: глибший спокій — */
.s-cta::before{background:radial-gradient(closest-side, rgba(184,121,50,.05), transparent 70%);}
.s-cta h2{letter-spacing:-0.03em;line-height:1.1;}
.s-cta p{color:#9A9A9A;}

/* — reduced motion — */
@media (prefers-reduced-motion: reduce){
  .scroll-hint{transition:none;}
}

/* — mobile guards — */
@media(max-width:768px){
  .philosophy-inner{grid-template-columns:1fr;padding:0 16px;column-gap:0;}
  .philosophy-number{font-size:56px;letter-spacing:-2px;}
  .philosophy-title{font-size:26px;}
}

/* ── clean build: картки секції 03 ── */
.home-portfolio-cta{display:inline-block;margin-top:34px;color:#767676;text-decoration:none;font-size:13.5px;letter-spacing:.5px;border-bottom:1px solid #D8D2C6;padding-bottom:4px;transition:color .5s cubic-bezier(.19,1,.22,1),border-color .5s cubic-bezier(.19,1,.22,1);}
.home-portfolio-cta:hover{color:#171717;border-color:#B87932;}

/* ══ Секції 03/04: єдина геометрія (еталон старого index.html) ══ */
.pf-media{overflow:hidden;border-radius:14px;margin-bottom:16px;}
.pf-media img{width:100%;height:auto;object-fit:cover;display:block;border-radius:0;margin-bottom:0;}
.pf-img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;}
.pf-media:hover img{transform:scale(1.045);transition:transform 1.6s cubic-bezier(.22,1,.36,1);}
.ba-media{margin-bottom:12px;}
.ba-img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;}
@media(prefers-reduced-motion:reduce){
  .pf-media:hover img{transform:none;transition:none;}
}

/* — will-change на hero video лише desktop (де працює parallax); mobile без нього — */
@media(min-width:769px){
  .video-wrap video{will-change:transform;}
}
