
    :root{
      --paper:#f7f2ea;
      --paper-2:#fffdf8;
      --paper-3:#ece3d6;
      --ink:#12181f;
      --ink-2:#26313b;
      --muted:#5f635f;
      --navy:#0b1d2b;
      --navy-2:#13283a;
      --navy-3:#21394e;
      --brass:#967044;
      --brass-2:#b8905f;
      --sage:#737d72;
      --line:rgba(20,25,31,.13);
      --line-strong:rgba(20,25,31,.20);
      --line-dark:rgba(255,255,255,.14);
      --white:rgba(255,255,255,.92);
      --shadow:0 18px 42px rgba(15,24,31,.10);
      --shadow-soft:0 10px 24px rgba(15,24,31,.065);
      --radius:26px;
      --font:-apple-system,BlinkMacSystemFont,'Segoe UI',Inter,'Helvetica Neue',Arial,sans-serif;
      --max:1180px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth;background:var(--paper);color:var(--ink);font-size:17px}
    body{
      margin:0;
      font-family:var(--font);
      font-size:1rem;
      line-height:1.62;
      color:var(--ink);
      background:
        radial-gradient(circle at 82% 0%, rgba(150,112,68,.08), transparent 28%),
        linear-gradient(180deg,var(--paper) 0%,#fcfaf4 48%,#f0e7da 100%);
      overflow-x:hidden;
      text-rendering:optimizeLegibility;
      -webkit-font-smoothing:antialiased;
      font-variant-numeric:lining-nums;
    }
    body::before{
      content:"";
      position:fixed;
      inset:0;
      z-index:-2;
      opacity:.055;
      pointer-events:none;
      background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.74' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)' opacity='.32'/%3E%3C/svg%3E");
    }
    a{color:inherit;text-decoration:none}
    img{max-width:100%;display:block}
    button,input,textarea{font:inherit}
    .container{width:min(var(--max),calc(100% - 48px));margin-inline:auto}
    .grid-bg{
      position:absolute;
      inset:0;
      pointer-events:none;
      background-image:linear-gradient(to right, rgba(20,25,31,.035) 1px, transparent 1px),linear-gradient(to bottom, rgba(20,25,31,.035) 1px, transparent 1px);
      background-size:96px 96px;
      mask-image:linear-gradient(180deg,black,transparent 72%);
    }
    .eyebrow{
      display:flex;
      align-items:center;
      gap:11px;
      color:var(--brass);
      font-size:.72rem;
      font-weight:720;
      letter-spacing:.16em;
      text-transform:uppercase;
    }
    .eyebrow::before{content:"";width:34px;height:1px;background:currentColor;opacity:.72}
    h1,h2,h3,p{margin:0}
    h1,h2,h3{font-family:var(--font);color:var(--ink);text-wrap:balance}
    h1{
      font-size:clamp(2.85rem,4.65vw,4.15rem);
      line-height:1.02;
      letter-spacing:-.052em;
      font-weight:650;
      max-width:900px;
    }
    h2{
      font-size:clamp(2rem,3.15vw,2.95rem);
      line-height:1.08;
      letter-spacing:-.044em;
      font-weight:640;
      max-width:820px;
    }
    h3{
      font-size:clamp(1.08rem,1.35vw,1.26rem);
      line-height:1.27;
      letter-spacing:-.026em;
      font-weight:650;
    }
    p{font-size:1rem;line-height:1.62}
    .lead{
      font-size:clamp(1.03rem,1.28vw,1.14rem);
      line-height:1.62;
      color:var(--ink-2);
      letter-spacing:-.012em;
    }
    .muted{color:var(--muted)}
    .section{position:relative;padding:96px 0}
    .section-header{
      display:grid;
      grid-template-columns:minmax(0,1.05fr) minmax(320px,.55fr);
      align-items:end;
      gap:40px;
      margin-bottom:40px;
    }
    .section-header .eyebrow{margin-bottom:16px}
    .section-header .lead{max-width:540px;justify-self:end;color:rgba(42,52,61,.76)}
    .btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:10px;
      min-height:50px;
      padding:0 22px;
      border-radius:999px;
      border:1px solid var(--line-strong);
      background:rgba(255,255,255,.54);
      color:var(--ink);
      font-weight:680;
      letter-spacing:-.012em;
      transition:background-color .22s ease,border-color .22s ease,box-shadow .22s ease,color .22s ease;
      cursor:pointer;
      white-space:nowrap;
    }
    .btn:hover{box-shadow:var(--shadow-soft);border-color:rgba(150,112,68,.38)}
    .btn.primary,
    .btn.brass{background:var(--navy);color:#fff;border-color:var(--navy);box-shadow:0 12px 26px rgba(11,29,43,.18)}
    .btn.primary:hover,
    .btn.brass:hover{background:var(--navy-2);border-color:var(--navy-2)}
    .btn svg{width:17px;height:17px}
    .header{position:fixed;top:0;left:0;right:0;z-index:50;padding:14px 0;transition:.24s ease}
    .header.scrolled{padding:9px 0;background:rgba(246,241,232,.78);backdrop-filter:blur(18px);border-bottom:1px solid rgba(20,25,31,.08)}
    .nav-shell{
      width:min(1240px,calc(100% - 28px));
      margin-inline:auto;
      min-height:66px;
      border:1px solid rgba(20,25,31,.10);
      border-radius:999px;
      background:rgba(255,250,243,.78);
      backdrop-filter:blur(20px);
      box-shadow:0 16px 42px rgba(15,24,31,.07);
      display:flex;
      align-items:center;
      justify-content:space-between;
      padding:0 10px 0 22px;
      gap:18px;
    }
    .brand{display:flex;align-items:center;gap:13px;min-width:206px}
    .brand img{width:162px;height:auto}
    .nav{display:flex;align-items:center;gap:2px}
    .nav a{
      font-size:.82rem;
      line-height:1;
      color:rgba(20,25,31,.70);
      font-weight:640;
      padding:12px 10px;
      border-radius:999px;
      transition:.2s ease;
    }
    .nav a:hover,.nav a.active{background:rgba(20,25,31,.055);color:var(--ink)}
    .header-actions{display:flex;align-items:center;gap:10px}
    .mobile-panel{display:none}
    .menu-toggle{display:none;width:48px;height:48px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.62);position:relative;cursor:pointer}
    .menu-toggle span{position:absolute;left:14px;right:14px;height:2px;background:var(--ink);transition:.2s ease}
    .menu-toggle span:nth-child(1){top:17px}.menu-toggle span:nth-child(2){top:24px}.menu-toggle span:nth-child(3){top:31px}
    .menu-open .menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-open .menu-toggle span:nth-child(2){opacity:0}.menu-open .menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
    .hero{min-height:100vh;padding:146px 0 82px;display:flex;align-items:center;overflow:hidden}
    .hero .container{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(380px,.76fr);gap:58px;align-items:center}
    .hero-copy{padding-top:14px}
    .hero h1{margin:18px 0 24px}
    .hero .lead{max-width:720px;margin-bottom:30px}
    .hero-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:26px}
    .hero-tags{display:flex;flex-wrap:wrap;gap:8px;max-width:760px}
    .hero-tags span{border:1px solid var(--line);background:rgba(255,255,255,.46);border-radius:999px;padding:8px 12px;font-size:.78rem;color:rgba(20,25,31,.70);font-weight:620}
    .hero-stage{position:relative;height:570px;min-height:510px}
    .portrait-stack{position:absolute;inset:0}
    .portrait-card{position:absolute;overflow:hidden;border-radius:30px;background:#ddd;border:1px solid rgba(255,255,255,.62);box-shadow:0 16px 38px rgba(15,24,31,.10);isolation:isolate}
    .portrait-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 36%,rgba(9,18,25,.06) 62%,rgba(9,18,25,.62) 100%);z-index:1}
    .portrait-card img{width:100%;height:100%;object-fit:cover;filter:saturate(.88) contrast(1.03);transform:none}
    .portrait-card.main{right:16px;top:18px;width:72%;height:72%}
    .portrait-card.secondary{left:0;bottom:48px;width:56%;height:50%;z-index:3}
    .portrait-label{position:absolute;left:20px;right:20px;bottom:18px;z-index:2;color:#fff}
    .portrait-label b{display:block;font-size:1rem;line-height:1.15;font-weight:690}.portrait-label span{font-size:.76rem;line-height:1.35;color:rgba(255,255,255,.76);display:block;margin-top:5px}
    .float-card{position:absolute;z-index:5;border:1px solid rgba(20,25,31,.10);background:rgba(255,250,243,.82);backdrop-filter:blur(16px);border-radius:20px;box-shadow:var(--shadow-soft);padding:17px;max-width:252px}
    .float-card strong{font-size:1.78rem;letter-spacing:-.04em;line-height:1;color:var(--navy);display:block;font-weight:650}.float-card span{font-size:.78rem;line-height:1.45;color:var(--muted);display:block;margin-top:8px}
    .float-card.one{right:0;bottom:68px}.float-card.two{display:none}.float-card.two strong{font-size:1rem;letter-spacing:-.02em}
    .map-panel{position:absolute;right:52px;bottom:0;width:70%;height:174px;border-radius:24px;overflow:hidden;border:1px solid rgba(255,255,255,.66);box-shadow:var(--shadow-soft);z-index:0;opacity:.34}.map-panel img{width:100%;height:100%;object-fit:cover;filter:sepia(.10) saturate(.55) brightness(1.05)}.map-panel::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(246,241,232,.62),rgba(167,123,69,.12))}
    .ticker{border-block:1px solid var(--line);background:rgba(255,250,243,.44);overflow:hidden}.ticker-track{display:flex;width:100%;justify-content:center;flex-wrap:wrap}.ticker span{padding:18px 28px;color:rgba(20,25,31,.56);font-weight:710;letter-spacing:.055em;text-transform:uppercase;font-size:.72rem;white-space:nowrap}.ticker-track span:nth-child(n+9){display:none}.ticker i{color:var(--brass);font-style:normal;margin-right:8px}@keyframes ticker{to{transform:translateX(-50%)}}
    .about-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:28px;align-items:stretch}.about-card{border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,250,243,.68);box-shadow:var(--shadow-soft);padding:36px}.about-card .lead{margin-top:18px}.thesis-grid{display:grid;gap:12px}.thesis{display:flex;gap:14px;align-items:flex-start;padding:18px;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.44)}.thesis mark{width:28px;height:28px;flex:0 0 28px;border-radius:50%;background:rgba(167,123,69,.12);color:var(--brass);display:grid;place-items:center;font-weight:760}.thesis b{display:block;margin-bottom:3px;color:var(--ink);font-weight:680}.thesis span{color:var(--muted);font-size:.86rem;line-height:1.5}
    .partners{background:linear-gradient(180deg,rgba(255,250,243,.28),rgba(235,226,212,.54))}.partner-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.partner-card{position:relative;border-radius:30px;overflow:hidden;min-height:520px;background:var(--navy);box-shadow:0 16px 38px rgba(15,24,31,.10);display:flex;align-items:flex-end;isolation:isolate;border:1px solid rgba(255,255,255,.56)}.partner-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,34,51,0) 24%,rgba(15,34,51,.42) 66%,rgba(15,34,51,.86));z-index:1}.partner-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 24%;filter:saturate(.86) contrast(1.03);transition:filter .22s ease}.partner-card:hover img{filter:saturate(.88) contrast(1.04)}.partner-card:nth-child(1) img{object-position:50% 58%}.partner-card:nth-child(2) img{object-position:50% 68%}.partner-info{position:relative;z-index:2;color:white;padding:28px}.partner-info h3{color:white;font-size:1.78rem;line-height:1.08;letter-spacing:-.045em;font-weight:620}.partner-role{color:rgba(255,255,255,.74);font-weight:620;margin:6px 0 18px;font-size:.94rem}.chips{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:20px}.chips span{border:1px solid rgba(255,255,255,.17);background:rgba(255,255,255,.075);border-radius:999px;padding:7px 10px;font-size:.72rem;line-height:1.25;color:rgba(255,255,255,.82)}.quote{padding-top:18px;border-top:1px solid rgba(255,255,255,.18);font-size:1rem;line-height:1.5;letter-spacing:-.012em;color:rgba(255,255,255,.88)}
    .dark{background:radial-gradient(circle at 20% 0%,rgba(167,123,69,.12),transparent 34%),linear-gradient(135deg,var(--navy) 0%,#102536 100%);color:#fff}.dark h2,.dark h3{color:#fff}.dark .lead,.dark .muted{color:rgba(255,255,255,.68)}.dark .eyebrow{color:var(--brass-2)}.practices-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.practice-card{min-height:222px;border:1px solid var(--line-dark);border-radius:24px;background:rgba(255,255,255,.055);padding:24px;position:relative;overflow:hidden;transition:border-color .22s ease,background-color .22s ease}.practice-card:hover{background:rgba(255,255,255,.075);border-color:rgba(198,161,107,.34)}.practice-card::before{content:attr(data-num);position:absolute;right:22px;top:18px;font-size:2.6rem;color:rgba(255,255,255,.052);letter-spacing:-.06em;font-weight:640}.practice-card h3{margin-bottom:14px;max-width:270px;position:relative;z-index:1}.practice-card p{color:rgba(255,255,255,.67);font-size:.91rem;line-height:1.57;position:relative;z-index:1}
    .method-layout{display:grid;grid-template-columns:340px 1fr;gap:46px;align-items:start}.method-note{position:sticky;top:118px;border:1px solid var(--line);border-radius:26px;background:rgba(255,250,243,.64);box-shadow:var(--shadow-soft);padding:26px}.method-note strong{display:block;font-size:1.8rem;line-height:1.08;letter-spacing:-.04em;margin-bottom:12px;font-weight:620}.timeline{display:grid;gap:14px;counter-reset:step}.step{counter-increment:step;display:grid;grid-template-columns:72px 1fr;gap:20px;border:1px solid var(--line);border-radius:24px;background:rgba(255,250,243,.54);padding:22px;position:relative;overflow:hidden}.step::before{content:"0" counter(step);font-size:2rem;letter-spacing:-.05em;color:var(--brass);line-height:1;font-weight:620}.step h3{margin-bottom:7px}.step p{color:var(--muted)}
    .task-board{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.task{display:flex;gap:14px;align-items:flex-start;padding:18px;border:1px solid rgba(20,25,31,.09);background:rgba(255,255,255,.36);border-radius:18px}.task span{color:var(--brass);font-weight:760;font-size:.86rem}.task p{color:var(--ink-2);font-size:.95rem;line-height:1.52}
    .cases-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.case-card{border:1px solid var(--line);border-radius:24px;background:rgba(255,250,243,.62);padding:24px;min-height:242px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 10px 26px rgba(15,24,31,.04)}.case-card small{color:var(--brass);font-weight:740;letter-spacing:.10em;text-transform:uppercase;font-size:.70rem}.case-card h3{margin:16px 0 12px}.case-card p{font-size:.93rem;line-height:1.55;color:var(--muted)}
    .formats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.format-card{border:1px solid var(--line-dark);background:rgba(255,255,255,.055);border-radius:24px;padding:21px;min-height:210px}.format-card h3{margin-bottom:13px}.format-card p{color:rgba(255,255,255,.66);font-size:.91rem;line-height:1.56}.principles{display:grid;grid-template-columns:1fr 1fr;gap:16px}.principle{border-left:2px solid var(--brass);background:rgba(255,250,243,.56);padding:24px 26px;border-radius:0 24px 24px 0;box-shadow:0 12px 30px rgba(15,24,31,.045)}.principle h3{margin-bottom:9px}.principle p{color:var(--muted);font-size:.96rem}
    .articles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.article{border:1px solid var(--line);border-radius:24px;padding:23px;background:rgba(255,250,243,.60);min-height:246px;display:flex;flex-direction:column}.article-meta{font-size:.70rem;color:var(--brass);font-weight:760;letter-spacing:.11em;text-transform:uppercase;margin-bottom:16px}.article h3{margin-bottom:12px}.article p{color:var(--muted);font-size:.92rem;line-height:1.55}.article a{margin-top:auto;padding-top:22px;color:var(--ink);font-weight:700}.article a::after{content:" →";color:var(--brass)}
    .contact{padding-bottom:88px}.contact-box{display:grid;grid-template-columns:.92fr 1.08fr;gap:0;border:1px solid var(--line);border-radius:32px;background:rgba(255,250,243,.72);box-shadow:var(--shadow);overflow:hidden}.contact-aside{padding:40px;background:linear-gradient(145deg,var(--navy),#102638);color:white;position:relative;overflow:hidden}.contact-aside::after{content:"";position:absolute;right:-120px;bottom:-120px;width:300px;height:300px;border-radius:50%;background:rgba(167,123,69,.13)}.contact-aside h2{color:white;margin:16px 0 18px}.contact-aside p{color:rgba(255,255,255,.70)}.contact-points{display:grid;gap:14px;margin-top:30px}.contact-point{border-top:1px solid rgba(255,255,255,.12);padding-top:14px}.contact-point b{display:block;color:#fff;font-weight:690}.contact-point span{color:rgba(255,255,255,.64);font-size:.86rem;line-height:1.48}.form{padding:34px;display:grid;gap:14px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:grid;gap:7px}.field label{font-size:.78rem;font-weight:700;color:rgba(20,25,31,.72)}.field input,.field textarea{width:100%;border:1px solid rgba(20,25,31,.14);border-radius:16px;background:rgba(255,255,255,.58);padding:14px 15px;color:var(--ink);outline:0;transition:.18s ease}.field input:focus,.field textarea:focus{border-color:rgba(167,123,69,.56);box-shadow:0 0 0 4px rgba(167,123,69,.10);background:#fff}.field textarea{min-height:134px;resize:vertical}.file-field{border:1px dashed rgba(20,25,31,.22);border-radius:18px;background:rgba(255,255,255,.40);padding:16px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:14px}.file-field input{display:none}.file-name{font-size:.78rem;color:var(--muted)}.form-note{font-size:.78rem;line-height:1.48;color:var(--muted)}.form-status{display:none;border-radius:16px;padding:14px;background:rgba(115,125,114,.12);color:#2c4030;border:1px solid rgba(115,125,114,.22)}.form-status.visible{display:block}.form-status.error{background:rgba(181,80,80,.10);border-color:rgba(181,80,80,.22);color:#793434}.generated-request{display:none;border:1px solid var(--line);background:rgba(255,255,255,.62);border-radius:16px;padding:16px;white-space:pre-wrap;color:var(--ink-2);font-size:.84rem;line-height:1.55}.generated-request.visible{display:block}
    .footer{padding:34px 0;border-top:1px solid var(--line);background:rgba(255,250,243,.46)}.footer-row{display:flex;align-items:center;justify-content:space-between;gap:22px}.footer img{width:146px}.footer small{color:var(--muted);font-size:.82rem}
    .reveal{opacity:0;transform:translateY(18px);transition:opacity .62s ease,transform .62s ease}.reveal.visible{opacity:1;transform:translateY(0)}

    /* v6 audit patch: partner cards are editorial, not poster overlays */
    .partner-card{min-height:0;display:flex;flex-direction:column;align-items:stretch;background:var(--navy);overflow:hidden}
    .partner-card::after{display:none}
    .partner-card img{position:relative;inset:auto;width:100%;height:342px;object-fit:cover;object-position:50% 50%;filter:saturate(.88) contrast(1.03);transition:filter .22s ease}
    .partner-card:nth-child(2) img{object-position:50% 50%}
    .partner-info{position:relative;z-index:2;background:linear-gradient(145deg,var(--navy),#102638);padding:26px;min-height:254px}
    .partner-card:hover img{filter:saturate(.9) contrast(1.04)}

    @media (max-width:1100px){.nav{display:none}.menu-toggle{display:block}.header-actions .btn{display:none}.nav-shell{border-radius:30px;align-items:center;padding:9px 10px 9px 18px}.brand{height:48px}.mobile-panel{display:none;position:absolute;top:82px;left:14px;right:14px;border:1px solid var(--line);border-radius:24px;background:rgba(255,250,243,.97);box-shadow:var(--shadow);padding:12px}.menu-open .mobile-panel{display:grid}.mobile-panel a{padding:14px;border-radius:14px;font-weight:690;color:var(--ink-2)}.mobile-panel a:hover{background:rgba(20,25,31,.055)}.hero .container{grid-template-columns:1fr;gap:28px}.hero-stage{height:560px;max-width:650px;margin:0 auto;width:100%}.about-grid,.method-layout,.contact-box{grid-template-columns:1fr}.method-note{position:relative;top:auto}.section-header{grid-template-columns:1fr;gap:18px}.section-header .lead{justify-self:start}.practices-grid,.articles{grid-template-columns:repeat(2,minmax(0,1fr))}.cases-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.formats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.contact-box{gap:0}}
    @media (max-width:760px){html{font-size:16px}.container{width:min(100% - 28px,var(--max))}.section{padding:70px 0}.section-header{display:grid;gap:18px;margin-bottom:30px}h1{font-size:clamp(2.05rem,9.2vw,2.82rem);line-height:1.06;letter-spacing:-.047em}h2{font-size:clamp(1.72rem,7.7vw,2.32rem);line-height:1.1}.lead{font-size:1rem;line-height:1.55}.hero{padding:108px 0 46px;min-height:auto}.hero h1{margin:16px 0 20px}.hero .lead{margin-bottom:24px}.hero-stage{height:430px;min-height:410px}.portrait-card.main{right:0;width:78%;height:66%}.portrait-card.secondary{width:63%;height:46%;bottom:54px}.float-card{display:none}.map-panel{right:0;width:82%;height:126px;opacity:.42}.hero-actions{align-items:stretch;margin-bottom:20px}.hero-actions .btn{width:100%}.hero-tags span{font-size:.77rem}.hero-tags span:nth-child(n+4){display:none}.partner-grid,.practices-grid,.task-board,.cases-grid,.formats-grid,.principles,.articles,.form-row{grid-template-columns:1fr}.partner-card{border-radius:24px}
      .partner-card img{height:292px}
      .partner-info{min-height:auto}
.formats-grid{gap:14px}.footer-row{display:grid}.brand img{width:145px}.ticker span{padding:15px 14px}.step{grid-template-columns:1fr;gap:10px}.about-card,.contact-aside,.form{padding:24px}.contact-box{border-radius:26px}.partner-info{padding:24px}.partner-info h3{font-size:1.72rem}.quote{font-size:.96rem}.practice-card,.case-card,.article,.format-card{min-height:auto}.file-field{align-items:flex-start;flex-direction:column}.nav-shell{width:min(100% - 18px,1240px)}}
    @media (max-width:420px){.hero-stage{height:455px;min-height:455px}.portrait-label{left:16px;right:16px;bottom:15px}.portrait-label b{font-size:.94rem}.portrait-label span{font-size:.72rem}.section{padding:62px 0}.btn{min-height:48px;padding-inline:18px}.ticker-track{justify-content:flex-start}.ticker span:nth-child(n+7){display:none}}
    @media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.reveal{opacity:1;transform:none}}


    /* v7 client comments patch: keep ARX v6 premium base, add controlled content modules */
    .nav a{font-size:.80rem;padding:11px 9px}
    .hero-stage{height:auto;min-height:0;display:flex;align-items:stretch}
    .portrait-stack{position:relative;inset:auto;display:grid;grid-template-columns:1fr 1fr;gap:18px;width:100%;min-height:540px}
    .portrait-card,.portrait-card.main,.portrait-card.secondary{position:relative;left:auto;right:auto;top:auto;bottom:auto;width:auto;height:auto;min-height:540px;z-index:1}
    .portrait-card{border-radius:28px;box-shadow:0 14px 34px rgba(15,24,31,.095)}
    .portrait-card img{height:100%;object-fit:cover;object-position:50% 44%}
    .portrait-card.secondary img{object-position:50% 58%}
    .map-panel,.float-card{display:none}
    .ticker{background:rgba(255,250,243,.50)}
    .ticker-track{width:100%;display:flex;flex-wrap:wrap;justify-content:center;animation:none;gap:0}
    .ticker-track span:nth-child(n){display:inline-flex}
    .ticker span{padding:16px 20px;font-size:.74rem;line-height:1.35;text-transform:none;letter-spacing:.015em;color:rgba(20,25,31,.62)}
    .partner-contacts{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 20px}
    .partner-contacts a{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:rgba(255,255,255,.88);border-radius:999px;padding:8px 11px;font-size:.76rem;font-weight:680;line-height:1.2}
    .partner-contacts a:hover{background:rgba(255,255,255,.14)}
    .land-section{background:linear-gradient(180deg,rgba(255,250,243,.20),rgba(235,226,212,.40))}
    .land-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
    .land-card{border:1px solid var(--line);border-radius:26px;background:rgba(255,253,248,.66);box-shadow:0 10px 26px rgba(15,24,31,.055);padding:24px;display:flex;flex-direction:column;min-height:356px}
    .land-top{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:24px;color:var(--brass);font-size:.72rem;font-weight:760;letter-spacing:.08em;text-transform:uppercase}
    .land-top b{color:rgba(20,25,31,.58);font-weight:720;letter-spacing:.06em}
    .land-card h3{margin-bottom:14px}
    .land-card-title-link{color:inherit;text-decoration:none}.land-card-title-link:hover{color:var(--brass)}
    .land-card p{color:var(--muted);font-size:.93rem;line-height:1.58;margin-bottom:20px}
    .land-card dl{display:grid;gap:10px;margin:0 0 22px;padding:0}
    .land-card dl div{display:flex;justify-content:space-between;gap:18px;border-top:1px solid var(--line);padding-top:10px}
    .land-card dt{font-size:.76rem;color:var(--muted)}
    .land-card dd{margin:0;font-size:.82rem;font-weight:700;color:var(--ink-2);text-align:right}
    .land-link{margin-top:auto;font-weight:760;color:var(--ink)}
    .land-link::after{content:' →';color:var(--brass)}
    .land-note{max-width:820px;margin:24px 0 0;color:var(--muted);font-size:.92rem;line-height:1.58}
    .blog-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:18px;align-items:stretch}
    .telegram-card{border:1px solid var(--line);border-radius:26px;background:rgba(255,253,248,.66);box-shadow:0 10px 26px rgba(15,24,31,.055);padding:26px}
    .telegram-card h3{margin-bottom:14px}.telegram-card p{color:var(--muted);font-size:.94rem;line-height:1.6}.telegram-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
    .telegram-frame{border:1px solid var(--line);border-radius:26px;background:rgba(255,253,248,.66);overflow:hidden;min-height:520px;box-shadow:0 10px 26px rgba(15,24,31,.055)}
    .telegram-frame iframe{width:100%;height:520px;border:0;background:#fff}
    .telegram-frame p{padding:14px 18px;color:var(--muted);font-size:.86rem;border-top:1px solid var(--line)}
    .telegram-frame a{font-weight:760;color:var(--ink)}
    .partner-direct a{color:rgba(255,255,255,.82);text-decoration:none}.partner-direct a:hover{color:#fff}
    @media (max-width:1100px){.nav a{font-size:.78rem}.portrait-stack{min-height:500px}.portrait-card,.portrait-card.main,.portrait-card.secondary{min-height:500px}.land-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-layout{grid-template-columns:1fr}.telegram-frame,.telegram-frame iframe{height:520px}}
    @media (max-width:760px){.hero-stage{height:auto;min-height:0}.portrait-stack{grid-template-columns:1fr 1fr;gap:10px;min-height:0}.portrait-card,.portrait-card.main,.portrait-card.secondary{min-height:330px;border-radius:20px}.portrait-label{left:14px;right:14px;bottom:14px}.portrait-label b{font-size:.86rem}.portrait-label span{font-size:.68rem}.ticker span{padding:12px 12px;font-size:.69rem}.land-grid,.blog-layout{grid-template-columns:1fr}.land-card{min-height:auto}.telegram-frame,.telegram-frame iframe{height:430px;min-height:430px}.partner-contacts a{font-size:.74rem}.partner-grid,.practices-grid,.task-board,.cases-grid,.formats-grid,.principles,.articles,.form-row{grid-template-columns:1fr}}
    @media (max-width:420px){.portrait-card,.portrait-card.main,.portrait-card.secondary{min-height:260px}.ticker span:nth-child(n+6){display:none}.telegram-frame,.telegram-frame iframe{height:380px;min-height:380px}}


    /* v7 hero refinement after abbreviation expansion */
    .hero .container{grid-template-columns:minmax(0,.93fr) minmax(500px,.76fr);gap:44px}
    .hero-copy{padding-top:8px}
    .portrait-stack{min-height:510px}
    .portrait-card,.portrait-card.main,.portrait-card.secondary{min-height:510px}
    .portrait-card img{object-position:50% 40%}
    .portrait-card.secondary img{object-position:50% 60%}
    @media (max-width:1100px){.hero .container{grid-template-columns:1fr}.portrait-stack{max-width:720px;margin-inline:auto;min-height:500px}.portrait-card,.portrait-card.main,.portrait-card.secondary{min-height:500px}}
    @media (max-width:760px){.portrait-stack{max-width:none;min-height:0}.portrait-card,.portrait-card.main,.portrait-card.secondary{min-height:310px}}
    @media (max-width:420px){.portrait-card,.portrait-card.main,.portrait-card.secondary{min-height:245px}}
    .portrait-card img{object-position:var(--portrait-x,50%) var(--portrait-y,44%);transform:scale(var(--portrait-scale,1));transform-origin:var(--portrait-x,50%) var(--portrait-y,44%)}
    .partner-card img{object-position:var(--partner-image-x,50%) var(--partner-image-y,50%);transform:scale(var(--partner-image-scale,1));transform-origin:var(--partner-image-x,50%) var(--partner-image-y,50%)}

  

/* ARX starter additions: editable content, land filters, legal pages, no-upload form */
.land-controls{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 24px}
.land-select{min-height:46px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.52);padding:0 16px;color:var(--ink-2);font-weight:650;outline:0}
.land-card[hidden]{display:none!important}
.land-card .land-cover{height:150px;border-radius:20px;overflow:hidden;margin:-4px -4px 18px;background:rgba(21,28,34,.06)}
.land-card .land-cover img{width:100%;height:100%;object-fit:cover;filter:saturate(.86) contrast(1.03)}
.land-meta{display:grid;gap:10px;margin:0 0 22px;padding:0}
.land-meta div{display:flex;justify-content:space-between;gap:18px;border-top:1px solid var(--line);padding-top:10px}
.land-meta dt{font-size:.76rem;color:var(--muted)}
.land-meta dd{margin:0;font-size:.82rem;font-weight:700;color:var(--ink-2);text-align:right}
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.blog-card{border:1px solid var(--line);border-radius:28px;padding:24px;background:rgba(255,250,242,.54);min-height:250px;display:flex;flex-direction:column;box-shadow:0 10px 30px rgba(15,24,31,.045)}
.blog-card time{font-size:12px;color:var(--brass);font-weight:850;letter-spacing:.12em;text-transform:uppercase;margin-bottom:16px}
.blog-card h3{margin-bottom:12px}.blog-card p{color:var(--muted);font-size:15px}.blog-card a{margin-top:auto;padding-top:24px;color:var(--ink);font-weight:850}.blog-card a::after{content:' →';color:var(--brass)}
.partner-contacts{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.partner-contacts a{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);border-radius:999px;padding:8px 10px;font-size:12px;color:rgba(255,255,255,.84)}
.legal-page{padding:150px 0 88px}.legal-card{border:1px solid var(--line);border-radius:32px;background:rgba(255,250,242,.70);box-shadow:var(--shadow-soft);padding:42px}.legal-card h1{font-size:clamp(38px,5vw,64px);margin-bottom:22px}.legal-card h2{font-family:var(--serif);font-size:30px;margin:32px 0 12px}.legal-card h3,.legal-card h4{margin:28px 0 10px}.legal-card p,.legal-card li{color:var(--ink-2)}.legal-card ul{padding-left:20px}.legal-card table,.analytics-detail-page .article-body table{width:100%;border-collapse:collapse;margin-top:24px;font-size:.96rem}.legal-card th,.legal-card td,.analytics-detail-page .article-body th,.analytics-detail-page .article-body td{border:1px solid var(--line);padding:12px 14px;text-align:left;vertical-align:top}.legal-card th,.analytics-detail-page .article-body th{background:rgba(235,226,212,.42);font-weight:720;color:var(--ink)}.legal-note{margin-top:26px;border-top:1px solid var(--line);padding-top:18px;color:var(--muted)!important;font-size:14px}
.check-field{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--muted)}.check-field input{margin-top:4px}.hp-field{position:absolute;left:-9999px;opacity:0;pointer-events:none}
.form select{width:100%;border:1px solid rgba(21,28,34,.15);border-radius:18px;background:rgba(255,255,255,.58);padding:15px 16px;color:var(--ink);outline:0;transition:.18s ease}
.footer-links{display:flex;flex-wrap:wrap;gap:10px 16px;margin-top:8px}.footer-links a{color:var(--muted);font-size:13px;text-decoration:none}.footer-links a:hover{color:var(--ink)}
@media (max-width:760px){.blog-grid{grid-template-columns:1fr}.land-controls{display:grid}.land-select{width:100%}.legal-card{padding:24px}}

/* Land catalog page */
.land-page .land-catalog-section{
  background:linear-gradient(180deg,rgba(255,250,243,.30),rgba(235,226,212,.38));
}

.land-catalog-hero h1{
  max-width:820px;
}

.land-catalog-map{
  position:relative;
  min-height:390px;
  margin:0 0 18px;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:30px;
  background:
    radial-gradient(circle at 24% 32%,rgba(181,145,91,.16),transparent 18%),
    radial-gradient(circle at 78% 38%,rgba(31,45,61,.10),transparent 20%),
    linear-gradient(135deg,rgba(255,253,248,.78),rgba(235,226,212,.48));
  box-shadow:0 18px 46px rgba(15,24,31,.065);
}

.land-catalog-map::before,
.land-catalog-map::after{
  content:'';
  position:absolute;
  inset:auto;
  border:1px solid rgba(31,45,61,.08);
  border-radius:999px;
  transform:rotate(-18deg);
}

.land-catalog-map::before{
  width:62%;
  height:46%;
  left:11%;
  top:24%;
}

.land-catalog-map::after{
  width:48%;
  height:34%;
  right:8%;
  bottom:18%;
}

.land-catalog-map-grid{
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(31,45,61,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(31,45,61,.045) 1px,transparent 1px);
  background-size:46px 46px;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.75),rgba(0,0,0,.28));
}

.land-catalog-map-pin{
  position:absolute;
  width:13px;
  height:13px;
  border-radius:50%;
  background:var(--brass);
  box-shadow:0 0 0 9px rgba(181,145,91,.13),0 10px 24px rgba(15,24,31,.16);
}

.land-catalog-map-pin::after{
  content:'';
  position:absolute;
  inset:4px;
  border-radius:50%;
  background:rgba(255,253,248,.86);
}

.land-catalog-map-pin.pin-a{left:22%;top:38%}
.land-catalog-map-pin.pin-b{left:44%;top:55%}
.land-catalog-map-pin.pin-c{right:28%;top:34%}
.land-catalog-map-pin.pin-d{right:18%;bottom:28%}

@media (max-width:760px){
  .land-catalog-map{
    min-height:270px;
    border-radius:24px;
    margin-bottom:16px;
  }
}

.land-map-shell{
  position:relative;
  display:grid;
  gap:16px;
  margin:0 0 18px;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:30px;
  background:rgba(255,253,248,.68);
  box-shadow:0 18px 46px rgba(15,24,31,.065);
}

.land-map-shell[hidden]{
  display:none!important;
}

.land-map-toolbar{
  position:relative;
  z-index:2;
  display:flex;
  align-items:flex-end;
  justify-content:flex-start;
  flex-wrap:wrap;
  gap:14px 22px;
  padding:24px 24px 0;
}

.land-map-toolbar > div{
  min-width:0;
}

.land-map-toolbar h2{
  margin:8px 0 0;
  font-size:clamp(1.35rem,2vw,1.9rem);
}

.land-map-reset,
.land-map-search-back{
  flex:0 0 auto;
  min-height:42px;
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(255,253,248,.72);
  color:var(--ink);
  padding:0 16px;
  font:inherit;
  font-size:.82rem;
  font-weight:760;
  cursor:pointer;
  transition:.18s ease;
}

.land-map-reset:hover,
.land-map-search-back:hover{
  border-color:rgba(181,145,91,.34);
  background:rgba(255,253,248,.94);
}

.land-map-search-open{
  flex:0 0 auto;
  min-height:42px;
  margin-bottom:2px;
  border:1px solid rgba(15,24,31,.16);
  border-radius:999px;
  background:rgba(255,253,248,.86);
  color:var(--ink);
  padding:0 18px;
  font:inherit;
  font-size:.82rem;
  font-weight:760;
  cursor:pointer;
  box-shadow:none;
  transition:.18s ease;
}

.land-map-search-open:hover,
.land-map-search-open:focus-visible{
  background:#fffdf8;
  border-color:rgba(181,145,91,.42);
  outline:0;
}

.land-map-viewport{
  position:relative;
  min-height:390px;
  overflow:hidden;
  background:rgba(21,28,34,.06);
}

.land-map-viewport > *{
  width:100%;
  height:100%;
}

.land-map-selected{
  padding:0 24px 24px;
}

.land-map-selected[hidden]{
  display:none!important;
}

.land-map-selected-card{
  display:grid;
  gap:8px;
  padding:18px;
  border:1px solid var(--line);
  border-radius:22px;
  background:rgba(255,253,248,.72);
}

.land-map-selected-card span{
  color:var(--muted);
  font-size:.78rem;
  font-weight:720;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.land-map-selected-card h3{
  margin:0;
  font-size:1.08rem;
}

.land-map-selected-card p{
  margin:0;
  color:var(--muted);
  font-size:.92rem;
  line-height:1.55;
}

.land-map-marker{
  position:relative;
  width:34px;
  height:34px;
  padding:0;
  border:0;
  border-radius:50%;
  background:rgba(181,145,91,.18);
  box-shadow:0 14px 32px rgba(15,24,31,.18);
  cursor:pointer;
  transform:translate(-50%,-50%);
}

.land-map-marker span{
  position:absolute;
  inset:9px;
  border-radius:50%;
  background:var(--brass);
  box-shadow:inset 0 0 0 4px rgba(255,253,248,.82);
}

.land-map-marker.active{
  background:rgba(181,145,91,.34);
}

.land-map-marker.muted{
  opacity:.36;
}

.land-map-note{
  margin:-4px 24px 24px;
  color:var(--muted);
  font-size:.92rem;
  line-height:1.55;
}

.land-map-shell--detail{
  margin:0;
  padding:0;
}

.land-map-shell--detail .land-map-viewport{
  min-height:320px;
}

@media (max-width:760px){
  .land-map-shell{
    border-radius:24px;
  }

  .land-map-toolbar{
    padding:22px 22px 0;
  }

  .land-map-viewport{
    min-height:270px;
  }
}

body.land-map-search-open{
  overflow:hidden;
}

.land-map-search[hidden]{
  display:none!important;
}

.land-map-search{
  position:fixed;
  z-index:120;
  inset:0;
  padding:18px;
  background:rgba(15,24,31,.50);
  backdrop-filter:blur(18px);
}

.land-map-search-panel{
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
  gap:16px;
  width:100%;
  height:100%;
  border:1px solid rgba(255,253,248,.28);
  border-radius:28px;
  background:rgba(246,240,230,.96);
  font-family:var(--font);
  color:var(--ink);
  box-shadow:0 26px 80px rgba(15,24,31,.22);
  overflow:hidden;
}

.land-map-search-header{
  display:flex;
  justify-content:space-between;
  gap:24px;
  align-items:flex-start;
  padding:24px 24px 0;
}

.land-map-search-header h2{
  margin:8px 0 6px;
  font-size:clamp(1.45rem,2.1vw,2.15rem);
}

.land-map-search-header p{
  margin:0;
  color:var(--muted);
  font-size:.92rem;
}

.land-map-search-close{
  flex:0 0 auto;
  width:44px;
  height:44px;
  border:1px solid var(--line);
  border-radius:50%;
  background:rgba(255,253,248,.82);
  color:var(--ink);
  font-family:var(--font);
  font-weight:620;
  font-size:1.45rem;
  line-height:1;
  cursor:pointer;
}

.land-map-search-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(330px,390px);
  gap:16px;
  min-height:0;
  padding:0 24px 24px;
}

.land-map-search-map-wrap{
  position:relative;
  min-height:560px;
}

.land-map-search-map{
  height:100%;
  min-height:560px;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:24px;
  background:rgba(21,28,34,.06);
}

.land-map-search-map > *{
  width:100%;
  height:100%;
}

.land-map-search-zoom{
  position:absolute;
  z-index:3;
  right:16px;
  top:16px;
  display:grid;
  gap:8px;
}

.land-map-search-zoom button{
  width:42px;
  height:42px;
  border:1px solid var(--line);
  border-radius:50%;
  background:rgba(255,253,248,.88);
  color:var(--ink);
  font-size:1.35rem;
  line-height:1;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(15,24,31,.12);
}

.land-map-search-zoom button:hover,
.land-map-search-zoom button:focus-visible{
  border-color:rgba(181,145,91,.38);
  background:rgba(255,253,248,.98);
  outline:0;
}

.land-map-search-map-empty{
  display:grid;
  place-items:center;
  height:100%;
  min-height:320px;
  color:var(--muted);
  text-align:center;
  padding:24px;
}

.land-map-search-side{
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
  gap:14px;
  min-height:0;
}

.land-map-search-controls{
  display:grid;
  gap:10px;
}

.land-map-search-controls .land-select{
  font-family:var(--font);
  font-weight:650;
}

.land-map-reset{
  justify-self:start;
  font-family:var(--font);
}

.land-map-search-list-wrap,
.land-map-search-card-wrap{
  min-height:0;
  overflow:auto;
  border:1px solid var(--line);
  border-radius:22px;
  background:rgba(255,253,248,.68);
}

.land-map-search-list{
  display:grid;
}

.land-map-search-row{
  display:grid;
  gap:6px;
  width:100%;
  min-height:74px;
  padding:15px 16px;
  border:0;
  border-bottom:1px solid var(--line);
  background:transparent;
  color:var(--ink);
  font-family:var(--font);
  text-align:left;
  cursor:pointer;
}

.land-map-search-row:last-child{
  border-bottom:0;
}

.land-map-search-row:hover,
.land-map-search-row:focus-visible{
  background:rgba(181,145,91,.10);
  outline:0;
}

.land-map-search-row b{
  color:var(--ink);
  font-family:var(--font);
  font-size:.94rem;
  font-weight:720;
  line-height:1.25;
}

.land-map-search-row span{
  color:var(--muted);
  font-family:var(--font);
  font-size:.78rem;
  font-weight:650;
  line-height:1.35;
}

.land-map-search-empty{
  margin:0;
  padding:18px;
  color:var(--muted);
  font-family:var(--font);
  line-height:1.55;
}

.land-map-search-card{
  display:grid;
  gap:14px;
  padding:18px;
  font-family:var(--font);
  color:var(--ink);
}

.land-map-search-card img{
  width:100%;
  height:170px;
  object-fit:cover;
  border-radius:18px;
  background:rgba(21,28,34,.06);
}

.land-map-search-card h3{
  margin:0;
  color:var(--ink);
  font-family:var(--font);
  font-size:1.16rem;
  font-weight:650;
  line-height:1.2;
}

.land-map-search-card h3 a{
  color:inherit;
  text-decoration:none;
}

.land-map-search-card h3 a:hover{
  color:var(--brass);
}

.land-map-search-card p{
  margin:0;
  color:var(--muted);
  font-family:var(--font);
  font-size:.9rem;
  line-height:1.56;
}

.land-map-search-card .land-meta{
  margin:0;
  font-family:var(--font);
}

.land-map-search-card .land-top,
.land-map-search-card .land-top span,
.land-map-search-card .land-top b,
.land-map-search-card .land-meta dt,
.land-map-search-card .land-meta dd{
  font-family:var(--font);
}

.land-map-search-back{
  justify-self:start;
  font-family:var(--font);
}

@media (max-width:980px){
  .land-map-search-layout{
    grid-template-columns:1fr;
    grid-template-rows:minmax(300px,46vh) minmax(0,1fr);
  }

  .land-map-search-map-wrap,
  .land-map-search-map{
    min-height:300px;
  }

  .land-map-search-side{
    min-height:0;
  }
}

@media (max-width:760px){
  .land-map-search{
    padding:0;
  }

  .land-map-search-panel{
    border-radius:0;
    border:0;
  }

  .land-map-search-header{
    padding:18px 18px 0;
  }

  .land-map-search-layout{
    gap:12px;
    padding:0 18px 18px;
  }

  .land-map-toolbar{
    align-items:flex-start;
  }

  .land-map-search-open{
    margin-bottom:0;
  }
}

/* Land detail page */
.land-detail-section{
  background:linear-gradient(180deg,rgba(255,250,243,.30),rgba(235,226,212,.34));
}

.land-detail-back{
  display:inline-flex;
  margin:0 0 28px;
  color:var(--muted);
  font-size:.9rem;
  font-weight:720;
  text-decoration:none;
}

.land-detail-back:hover{
  color:var(--ink);
}

.land-detail-hero{
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(360px,.78fr);
  gap:28px;
  align-items:stretch;
  margin-bottom:24px;
}

.land-detail-copy,
.land-detail-visual,
.land-detail-aside,
.land-detail-block,
.land-detail-request{
  border:1px solid var(--line);
  border-radius:30px;
  background:rgba(255,253,248,.68);
  box-shadow:0 18px 46px rgba(15,24,31,.055);
}

.land-detail-copy{
  padding:34px;
  min-height:360px;
  display:flex;
  flex-direction:column;
}

.land-detail-copy h1{
  font-size:clamp(2.25rem,3.25vw,3.05rem);
  line-height:1.07;
  letter-spacing:-.044em;
  font-weight:620;
  max-width:850px;
  margin:0;
}

.land-detail-status{
  margin-bottom:24px;
}

.land-detail-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:auto;
  padding-top:28px;
}

.land-detail-visual{
  overflow:hidden;
  min-height:360px;
  background:rgba(21,28,34,.05);
}

.land-detail-visual img{
  width:100%;
  height:100%;
  min-height:360px;
  object-fit:cover;
  filter:saturate(.86) contrast(1.03);
}

.land-detail-layout{
  display:grid;
  grid-template-columns:minmax(280px,.78fr) minmax(0,1.22fr);
  gap:18px;
  align-items:start;
}

.land-detail-aside{
  position:sticky;
  top:112px;
  padding:26px;
}

.land-detail-aside h2{
  margin:0 0 18px;
  font-size:1.35rem;
}

.land-detail-aside .land-meta{
  margin-bottom:0;
}

.land-detail-aside .land-meta div:first-child{
  border-top:0;
  padding-top:0;
}

.land-detail-flow{
  display:grid;
  gap:18px;
}

.land-detail-block{
  padding:30px;
}

.land-detail-block h2{
  margin:10px 0 14px;
  font-size:clamp(1.35rem,2vw,1.85rem);
}

.land-detail-block p{
  color:var(--muted);
  line-height:1.65;
  margin:0;
}

.land-detail-request{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:24px;
  padding:30px;
}

.land-detail-request h2{
  max-width:820px;
  margin:10px 0 0;
  font-size:1.45rem;
}

@media (max-width:980px){
  .land-detail-hero,
  .land-detail-layout{
    grid-template-columns:1fr;
  }

  .land-detail-aside{
    position:relative;
    top:auto;
  }

  .land-detail-visual{
    min-height:320px;
  }

  .land-detail-visual img{
    min-height:320px;
  }

  .land-detail-request{
    align-items:flex-start;
    flex-direction:column;
  }
}

@media (max-width:760px){
  .land-detail-copy,
  .land-detail-aside,
  .land-detail-block,
  .land-detail-request{
    padding:24px;
    border-radius:24px;
  }

  .land-detail-copy{
    min-height:0;
  }

  .land-detail-copy h1{
    font-size:clamp(2rem,8vw,2.42rem);
    line-height:1.08;
  }

  .land-detail-visual,
  .land-detail-visual img{
    min-height:280px;
  }
}

/* Land home footer */
.land-footer{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:24px;
  margin-top:24px;
}

.land-footer .land-note{
  margin:0;
}

.land-all-link{
  flex:0 0 auto;
  white-space:nowrap;
}

@media (max-width:760px){
  .land-footer{
    flex-direction:column;
    align-items:flex-start;
  }
}

/* Land detail hero slider */
.land-slider{
  position:relative;
}

.land-slider-stage{
  position:absolute;
  inset:0;
}

.land-slider-slide{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  padding:0;
  border:0;
  background:transparent;
  opacity:0;
  cursor:zoom-in;
  transition:opacity .28s ease;
}

.land-slider-slide.active{
  opacity:1;
  z-index:1;
}

.land-slider-slide img{
  width:100%;
  height:100%;
  min-height:100%;
  object-fit:cover;
  filter:saturate(.86) contrast(1.03);
}

.land-detail-visual .land-slider-slide img{
  min-height:0;
}

.land-slider-arrow{
  position:absolute;
  z-index:2;
  top:50%;
  width:38px;
  height:38px;
  border:1px solid rgba(255,253,248,.68);
  border-radius:50%;
  background:rgba(255,253,248,.58);
  color:var(--ink);
  font-size:26px;
  line-height:1;
  cursor:pointer;
  transform:translateY(-50%);
  backdrop-filter:blur(12px);
  transition:.18s ease;
}

.land-slider-arrow:hover{
  background:rgba(255,253,248,.82);
  border-color:rgba(181,145,91,.34);
}

.land-slider-arrow.prev{
  left:16px;
}

.land-slider-arrow.next{
  right:16px;
}

.land-slider-meta{
  position:absolute;
  z-index:2;
  left:18px;
  right:18px;
  bottom:16px;
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:center;
  padding:11px 13px;
  border:1px solid rgba(255,253,248,.46);
  border-radius:999px;
  background:rgba(255,253,248,.62);
  backdrop-filter:blur(14px);
  color:rgba(20,25,31,.72);
}

.land-slider-meta span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:.78rem;
}

.land-slider-meta b{
  flex:0 0 auto;
  font-size:.76rem;
  font-weight:720;
  color:rgba(20,25,31,.58);
}

.land-lightbox{
  position:fixed;
  inset:0;
  z-index:100;
  display:grid;
  place-items:center;
  padding:28px;
  background:rgba(20,25,31,.78);
  opacity:0;
  pointer-events:none;
  transition:opacity .22s ease;
}

.land-lightbox.open{
  opacity:1;
  pointer-events:auto;
}

.land-lightbox-inner{
  position:relative;
  width:min(1120px,100%);
}

.land-lightbox img{
  display:block;
  width:100%;
  max-height:82vh;
  object-fit:contain;
  border-radius:24px;
  background:rgba(255,253,248,.08);
  box-shadow:0 28px 80px rgba(0,0,0,.28);
}

.land-lightbox-caption{
  margin:12px 54px 0 0;
  color:rgba(255,253,248,.78);
  font-size:.86rem;
}

.land-lightbox-close{
  position:absolute;
  top:-14px;
  right:-14px;
  width:38px;
  height:38px;
  border:1px solid rgba(255,253,248,.32);
  border-radius:50%;
  background:rgba(255,253,248,.12);
  color:rgba(255,253,248,.92);
  cursor:pointer;
  font-size:24px;
  line-height:1;
  backdrop-filter:blur(12px);
}

@media (max-width:980px){
  .land-detail-visual .land-slider-slide img{
    min-height:0;
  }
}

@media (max-width:760px){
  .land-slider-arrow{
    width:34px;
    height:34px;
    font-size:23px;
  }

  .land-slider-meta{
    left:12px;
    right:12px;
    bottom:12px;
    border-radius:20px;
  }

  .land-lightbox{
    padding:18px;
  }

  .land-lightbox img{
    border-radius:18px;
  }
}

/* Land lightbox navigation */
.land-lightbox-arrow{
  position:absolute;
  z-index:2;
  top:50%;
  width:42px;
  height:42px;
  border:1px solid rgba(255,253,248,.32);
  border-radius:50%;
  background:rgba(255,253,248,.12);
  color:rgba(255,253,248,.92);
  cursor:pointer;
  font-size:28px;
  line-height:1;
  transform:translateY(-50%);
  backdrop-filter:blur(12px);
  transition:.18s ease;
}

.land-lightbox-arrow:hover{
  background:rgba(255,253,248,.2);
  border-color:rgba(255,253,248,.46);
}

.land-lightbox-arrow.prev{
  left:18px;
}

.land-lightbox-arrow.next{
  right:18px;
}

.land-lightbox-meta{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:flex-start;
  margin-top:12px;
  color:rgba(255,253,248,.78);
}

.land-lightbox-meta .land-lightbox-caption{
  margin:0;
  font-size:.86rem;
}

.land-lightbox-counter{
  flex:0 0 auto;
  color:rgba(255,253,248,.62);
  font-size:.82rem;
}

@media (max-width:760px){
  .land-lightbox-arrow{
    width:36px;
    height:36px;
    font-size:24px;
  }

  .land-lightbox-arrow.prev{
    left:10px;
  }

  .land-lightbox-arrow.next{
    right:10px;
  }

  .land-lightbox-meta{
    margin-top:10px;
  }
}

/* Analytics catalogue and detail */
.analytics-section{
  background:linear-gradient(180deg,rgba(255,250,243,.22),rgba(235,226,212,.38));
}

.analytics-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}

.analytics-card{
  border:1px solid var(--line);
  border-radius:26px;
  background:rgba(255,253,248,.66);
  box-shadow:0 10px 26px rgba(15,24,31,.055);
  padding:24px;
  min-height:292px;
  display:flex;
  flex-direction:column;
  transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease,background-color .22s ease;
}

.analytics-card:hover{
  border-color:rgba(150,112,68,.32);
  box-shadow:0 16px 34px rgba(15,24,31,.075);
  transform:translateY(-2px);
  background:rgba(255,253,248,.76);
}

.analytics-card.accent{
  grid-column:span 2;
  min-height:270px;
  padding:28px 30px;
  background:linear-gradient(135deg,rgba(255,253,248,.78),rgba(235,226,212,.48));
  border-color:rgba(150,112,68,.18);
}

.analytics-card.accent h3{
  max-width:720px;
  font-size:clamp(1.32rem,2vw,1.78rem);
  line-height:1.16;
  letter-spacing:-.034em;
  -webkit-line-clamp:2;
}

.analytics-card.accent p{
  max-width:700px;
  -webkit-line-clamp:3;
}

.analytics-card-top{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:flex-start;
  margin-bottom:22px;
  color:var(--brass);
  font-size:.72rem;
  font-weight:760;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.analytics-card-top span,
.analytics-card-top time{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.analytics-card-top time{
  flex:0 0 auto;
  color:rgba(20,25,31,.58);
  font-weight:720;
  letter-spacing:.06em;
}

.analytics-card h3{
  margin-bottom:14px;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.analytics-card-title-link{
  color:inherit;
  text-decoration:none;
}

.analytics-card-title-link:hover,
.analytics-card-title-link:focus-visible{
  color:var(--brass);
  outline:0;
}

.analytics-card p{
  color:var(--muted);
  font-size:.93rem;
  line-height:1.58;
  margin-bottom:20px;
  display:-webkit-box;
  -webkit-line-clamp:4;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.analytics-link{
  margin-top:auto;
  padding-top:22px;
  color:var(--ink);
  font-weight:760;
  align-self:flex-start;
}

.analytics-link::after{
  content:' →';
  color:var(--brass);
}

.analytics-link:hover{
  color:var(--brass);
}

.analytics-home-footer{
  display:flex;
  justify-content:flex-end;
  margin-top:24px;
}

.analytics-catalog-hero{
  padding:150px 0 24px;
}

.analytics-catalog-hero .container{
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(320px,.58fr);
  gap:40px;
  align-items:end;
}

.analytics-catalog-hero .eyebrow{
  margin-bottom:16px;
}

.analytics-catalog-hero .lead{
  max-width:520px;
  color:rgba(42,52,61,.76);
}

.analytics-controls{
  display:grid;
  grid-template-columns:260px minmax(240px,1fr);
  gap:12px;
  margin:0 0 22px;
}

.analytics-select,
.analytics-search input{
  width:100%;
  min-height:46px;
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(255,255,255,.52);
  padding:0 16px;
  color:var(--ink-2);
  font-weight:520;
  letter-spacing:0;
  outline:0;
  transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease;
}

.analytics-select:focus-visible,
.analytics-search input:focus-visible{
  border-color:rgba(150,112,68,.58);
  box-shadow:0 0 0 4px rgba(150,112,68,.16);
  background:#fff;
}

.analytics-search{
  position:relative;
}

.analytics-search input{
  padding-left:42px;
}

.analytics-search::before{
  content:"⌕";
  position:absolute;
  left:17px;
  top:50%;
  transform:translateY(-51%);
  color:rgba(20,25,31,.48);
  font-size:1.05rem;
  pointer-events:none;
}

.analytics-count{
  margin:0 0 18px;
  color:var(--muted);
  font-size:.88rem;
  font-weight:650;
}

.catalogue-grid{
  align-items:stretch;
}

.catalogue-grid .analytics-card{
  min-height:316px;
}

.analytics-page .catalogue-actions{
  display:flex;
  justify-content:center;
  margin-top:28px;
}

.analytics-page .no-results{
  border:1px solid var(--line);
  border-radius:28px;
  background:rgba(255,253,248,.66);
  box-shadow:0 10px 26px rgba(15,24,31,.045);
  padding:44px;
  text-align:center;
}

.analytics-page .no-results h3{
  margin-bottom:8px;
}

.analytics-page .no-results p{
  color:var(--muted);
}

.analytics-detail-section{
  background:linear-gradient(180deg,rgba(255,250,243,.30),rgba(235,226,212,.34));
}

.analytics-detail-back{
  display:inline-flex;
  margin:0 0 28px;
  color:var(--muted);
  font-size:.9rem;
  font-weight:720;
}

.analytics-detail-back:hover{
  color:var(--ink);
}

.analytics-detail-hero{
  display:grid;
  grid-template-columns:minmax(0,1.04fr) minmax(360px,.74fr);
  gap:32px;
  align-items:center;
  margin-bottom:46px;
}

.analytics-detail-copy{
  min-width:0;
  padding:18px 0;
}

.analytics-detail-meta{
  display:flex;
  flex-wrap:wrap;
  gap:9px 14px;
  color:var(--brass);
  font-size:.72rem;
  font-weight:760;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:26px;
}

.analytics-detail-copy h1{
  margin-bottom:22px;
}

.analytics-detail-copy .lead{
  max-width:760px;
  margin-bottom:28px;
}

.analytics-detail-page .detail-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:22px;
}

.analytics-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:22px;
}

.analytics-tags span{
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(255,253,248,.48);
  padding:7px 11px;
  color:rgba(20,25,31,.68);
  font-size:.78rem;
  font-weight:680;
}

.analytics-visual{
  min-height:360px;
  border:1px solid rgba(20,25,31,.10);
  border-radius:30px;
  overflow:hidden;
  box-shadow:0 18px 46px rgba(15,24,31,.055);
  background:linear-gradient(135deg,rgba(38,50,61,.98),rgba(117,99,76,.82) 56%,rgba(240,228,210,.92));
  display:grid;
  place-items:center;
  position:relative;
  isolation:isolate;
}

.analytics-visual::before{
  content:"";
  position:absolute;
  inset:42px;
  border:1px solid rgba(20,25,31,.08);
  border-radius:24px;
  background:linear-gradient(135deg,rgba(255,253,248,.38),rgba(235,226,212,.22));
}

.analytics-visual::after{
  content:"ARX";
  position:absolute;
  top:22px;
  right:26px;
  color:rgba(20,25,31,.24);
  font-size:.74rem;
  font-weight:760;
  letter-spacing:.14em;
}

.analytics-visual.fallback{
  background:linear-gradient(135deg,rgba(255,253,248,.52),rgba(236,227,214,.32));
}

.analytics-visual.has-image::before,
.analytics-visual.has-image::after{
  display:none;
}

.analytics-visual.has-image img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
}

.analytics-visual-title{
  max-width:290px;
  color:rgba(20,25,31,.62);
  font-size:1rem;
  line-height:1.18;
  letter-spacing:.02em;
  font-weight:620;
  z-index:1;
}

.analytics-detail-page .article-body{
  max-width:820px;
  margin:0 auto;
  color:rgba(20,25,31,.78);
}

.analytics-detail-page .article-body>*+*{
  margin-top:22px;
}

.analytics-detail-page .article-body p{
  font-size:1.03rem;
  line-height:1.64;
}

.analytics-detail-page .article-body p+p{
  margin-top:12px;
}

.analytics-detail-page .article-body li{
  font-size:1.03rem;
  line-height:1.65;
}

.analytics-detail-page .article-body h2{
  font-size:clamp(1.55rem,2.2vw,2.05rem);
  line-height:1.18;
  letter-spacing:-.034em;
  margin-top:46px;
}

.analytics-detail-page .article-body h3{
  font-size:1.22rem;
  margin-top:34px;
}

.analytics-detail-page .article-body h4{
  font-size:1.06rem;
  line-height:1.3;
  margin-top:28px;
}

.analytics-detail-page .article-body blockquote{
  margin:34px 0;
  border-left:2px solid var(--brass);
  background:rgba(235,226,212,.32);
  padding:20px 24px;
  color:rgba(20,25,31,.78);
  font-size:1.08rem;
  line-height:1.62;
}

.analytics-detail-page .article-body blockquote p{
  font-size:inherit;
  line-height:inherit;
}

.analytics-detail-page .article-body blockquote footer{
  margin-top:12px;
  color:rgba(20,25,31,.58);
  font-size:.85rem;
  font-weight:680;
}

.analytics-detail-page .article-body ul,
.analytics-detail-page .article-body ol{
  padding-left:1.25rem;
  margin-bottom:0;
}

.analytics-detail-page .article-body li+li{
  margin-top:8px;
}

.analytics-detail-page .article-body a{
  color:var(--brass);
  font-weight:720;
  border-bottom:1px solid rgba(150,112,68,.28);
}

.analytics-detail-page .article-body-legacy img{
  width:auto;
  max-width:100%;
  max-height:920px;
  margin-inline:auto;
  border:1px solid var(--line);
  border-radius:24px;
  background:rgba(255,253,248,.70);
  box-shadow:0 14px 34px rgba(15,24,31,.07);
}

.analytics-detail-page .article-body code{
  border-radius:6px;
  background:rgba(20,25,31,.07);
  padding:.08em .34em;
  font-size:.9em;
}

.analytics-detail-page .article-body-blocks .analytics-article-image{
  margin:34px 0;
}

.analytics-detail-page .article-body-blocks .analytics-article-image img{
  display:block;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:920px;
  margin-inline:auto;
  border-radius:24px;
  box-shadow:0 14px 34px rgba(15,24,31,.07);
}

.analytics-detail-page .article-body-blocks .analytics-article-image.bordered img{
  border:1px solid var(--line);
}

.analytics-detail-page .article-body-blocks .analytics-article-image.background{
  border-radius:28px;
  background:rgba(235,226,212,.32);
  padding:22px;
}

.analytics-detail-page .article-body-blocks .analytics-article-image.wide{
  width:min(1000px,calc(100vw - 48px));
  max-width:none;
  margin-left:50%;
  transform:translateX(-50%);
}

.analytics-detail-page .article-body-blocks figcaption{
  max-width:720px;
  margin:10px auto 0;
  color:rgba(20,25,31,.58);
  font-size:.82rem;
  line-height:1.5;
  text-align:center;
}

.analytics-detail-page .article-body-blocks hr{
  width:74px;
  border:0;
  border-top:1px solid rgba(150,112,68,.45);
  margin:42px auto;
}

.analytics-documents{
  width:min(1000px,100%);
  margin:56px auto 0;
}

.analytics-documents-header{
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:flex-end;
  margin-bottom:18px;
}

.analytics-documents-header .eyebrow{
  margin-bottom:10px;
}

.analytics-documents-header h2{
  font-size:1.45rem;
  line-height:1.18;
}

.analytics-documents-list{
  display:grid;
  gap:16px;
}

.analytics-document{
  border:1px solid var(--line);
  border-radius:28px;
  background:rgba(255,253,248,.66);
  box-shadow:0 10px 26px rgba(15,24,31,.045);
  padding:22px;
}

.analytics-document-head{
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:flex-start;
}

.analytics-document-head h3{
  font-size:1.1rem;
  line-height:1.22;
  margin-bottom:8px;
}

.analytics-document-head p{
  max-width:680px;
  color:var(--muted);
  font-size:.94rem;
  line-height:1.58;
  margin-bottom:12px;
}

.analytics-document-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  color:rgba(20,25,31,.58);
  font-size:.76rem;
  font-weight:720;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.analytics-document-meta span{
  border:1px solid rgba(20,25,31,.09);
  border-radius:999px;
  background:rgba(255,253,248,.44);
  padding:5px 9px;
}

.analytics-document-actions{
  display:flex;
  flex:0 0 auto;
  flex-wrap:wrap;
  gap:8px;
  justify-content:flex-end;
}

.btn.compact{
  min-height:38px;
  padding:10px 14px;
  font-size:.82rem;
}

.pdf-viewer{
  margin-top:18px;
  border:1px solid rgba(20,25,31,.10);
  border-radius:22px;
  overflow:hidden;
  overflow-anchor:none;
  background:rgba(248,244,237,.72);
}

.pdf-toolbar{
  height:51px;
  min-height:51px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:8px;
  border-bottom:1px solid rgba(20,25,31,.08);
  background:rgba(255,253,248,.70);
}

.pdf-icon-button{
  width:34px;
  height:34px;
  min-width:34px;
  flex:0 0 34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0;
  border:1px solid rgba(20,25,31,.12);
  border-radius:999px;
  background:rgba(255,253,248,.72);
  color:var(--ink);
  font:inherit;
  font-size:.9rem;
  font-weight:760;
  line-height:1;
  cursor:pointer;
  transition:border-color .18s ease,background-color .18s ease,color .18s ease;
}

.pdf-icon-button[data-pdf-zoom-reset],
.pdf-icon-button[data-modal-pdf-zoom-reset]{
  width:42px;
  min-width:42px;
  flex-basis:42px;
  font-size:.78rem;
  letter-spacing:0;
}

.pdf-icon-button:hover:not(:disabled),
.pdf-icon-button:focus-visible{
  border-color:rgba(150,112,68,.42);
  background:#fff;
  color:var(--brass);
  outline:0;
}

.pdf-icon-button:disabled{
  color:rgba(20,25,31,.28);
  cursor:not-allowed;
}

.pdf-page-status{
  min-width:72px;
  color:rgba(20,25,31,.66);
  font-size:.82rem;
  font-weight:720;
  text-align:center;
}

.pdf-toolbar-spacer{
  flex:1 1 auto;
}

.pdf-canvas-shell{
  height:460px;
  max-height:72vh;
  overflow:auto;
  overflow-anchor:none;
  display:grid;
  place-items:center;
  position:relative;
  padding:10px;
}

.pdf-canvas-shell canvas{
  max-width:none;
  border-radius:6px;
  background:#fff;
  box-shadow:0 10px 28px rgba(15,24,31,.12);
}

.pdf-loading{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  color:rgba(20,25,31,.58);
  font-size:.9rem;
  font-weight:720;
  background:rgba(248,244,237,.78);
}

.pdf-loading[hidden]{
  display:none;
}

.pdf-fallback{
  padding:18px;
  border-top:1px solid rgba(20,25,31,.08);
  background:rgba(255,253,248,.70);
}

.pdf-fallback[hidden]{
  display:none;
}

.pdf-fallback p{
  margin-bottom:8px;
  color:var(--muted);
  font-size:.92rem;
}

.pdf-viewer.has-error .pdf-canvas-shell{
  display:none;
}

.pdf-lightbox{
  position:fixed;
  inset:0;
  z-index:120;
  display:grid;
  place-items:center;
  padding:16px;
  overflow-anchor:none;
  background:rgba(20,25,31,.82);
  opacity:0;
  pointer-events:none;
  transition:opacity .18s ease;
}

.pdf-lightbox.open{
  opacity:1;
  pointer-events:auto;
}

.pdf-lightbox-panel{
  width:min(760px,100%);
  height:calc(100dvh - 32px);
  max-height:calc(100dvh - 32px);
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid rgba(255,253,248,.22);
  border-radius:24px;
  background:rgba(248,244,237,.96);
  box-shadow:0 28px 80px rgba(0,0,0,.32);
}

.pdf-lightbox-header{
  height:56px;
  min-height:56px;
  flex:0 0 56px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:9px 12px 9px 16px;
  border-bottom:1px solid rgba(20,25,31,.09);
  background:rgba(255,253,248,.82);
}

.pdf-lightbox-actions{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  gap:8px;
  margin-left:auto;
}

.pdf-lightbox-action{
  min-height:38px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 14px;
  border:1px solid var(--line-strong);
  border-radius:999px;
  background:rgba(255,255,255,.54);
  color:var(--ink);
  font-size:.82rem;
  font-weight:680;
  line-height:1;
  letter-spacing:-.012em;
  text-decoration:none;
  white-space:nowrap;
  transition:background-color .22s ease,border-color .22s ease,box-shadow .22s ease,color .22s ease;
}

.pdf-lightbox-action:hover,
.pdf-lightbox-action:focus-visible{
  border-color:rgba(150,112,68,.42);
  background:#fff;
  box-shadow:var(--shadow-soft);
  color:var(--ink);
  outline:0;
}

.pdf-lightbox-title{
  min-width:0;
  overflow:hidden;
  color:var(--ink);
  font-size:.95rem;
  font-weight:760;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.pdf-lightbox-close{
  width:36px;
  height:36px;
  flex:0 0 auto;
  border:1px solid rgba(20,25,31,.12);
  border-radius:999px;
  background:rgba(255,253,248,.72);
  color:var(--ink);
  cursor:pointer;
  font:inherit;
  font-size:1.22rem;
  line-height:1;
}

.pdf-lightbox-close:hover,
.pdf-lightbox-close:focus-visible{
  border-color:rgba(150,112,68,.42);
  background:#fff;
  color:var(--brass);
  outline:0;
}

.pdf-lightbox-toolbar{
  height:51px;
  min-height:51px;
  flex:0 0 auto;
  border-bottom:1px solid rgba(20,25,31,.09);
}

.pdf-lightbox-shell{
  min-height:0;
  flex:1 1 auto;
  overflow:auto;
  display:grid;
  place-items:center;
  position:relative;
  padding:8px;
}

.pdf-lightbox-shell canvas{
  max-width:none;
  border-radius:6px;
  background:#fff;
  box-shadow:0 14px 42px rgba(15,24,31,.18);
}

.analytics-detail-page .article-cta{
  width:min(1000px,100%);
  margin:64px auto 0;
  border:1px solid var(--line);
  border-radius:28px;
  background:rgba(255,253,248,.66);
  box-shadow:0 10px 26px rgba(15,24,31,.045);
  padding:28px;
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:22px;
}

.analytics-detail-page .article-cta .eyebrow{
  margin-bottom:10px;
}

.analytics-detail-page .article-cta h2{
  font-size:1.45rem;
  max-width:760px;
}

.analytics-detail-page .cta-options{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:flex-end;
}

@media (max-width:1100px){
  .analytics-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .analytics-card.accent{
    grid-column:span 2;
  }

  .analytics-catalog-hero .container,
  .analytics-detail-hero{
    grid-template-columns:1fr;
  }

  .analytics-visual{
    min-height:320px;
  }
}

@media (max-width:760px){
  .analytics-grid,
  .analytics-controls{
    grid-template-columns:1fr;
  }

  .analytics-card,
  .catalogue-grid .analytics-card{
    min-height:auto;
  }

  .analytics-card.accent{
    grid-column:auto;
    min-height:auto;
    padding:24px;
  }

  .analytics-card.accent h3{
    font-size:clamp(1.14rem,5.2vw,1.34rem);
    -webkit-line-clamp:3;
  }

  .analytics-catalog-hero{
    padding:112px 0 20px;
  }

  .analytics-catalog-hero .container{
    gap:18px;
  }

  .analytics-detail-hero{
    gap:26px;
    margin-bottom:34px;
  }

  .analytics-detail-copy{
    padding:0;
  }

  .analytics-visual{
    min-height:246px;
    border-radius:24px;
  }

  .analytics-visual::before{
    inset:24px;
  }

  .analytics-detail-page .article-body{
    max-width:100%;
  }

  .analytics-detail-page .article-body p{
    font-size:1rem;
    line-height:1.62;
  }

  .analytics-detail-page .article-body p+p{
    margin-top:10px;
  }

  .analytics-detail-page .article-body li{
    font-size:1rem;
    line-height:1.62;
  }

  .analytics-detail-page .article-body blockquote{
    padding:18px 20px;
    margin:28px 0;
  }

  .analytics-detail-page .article-body-blocks .analytics-article-image,
  .analytics-detail-page .article-body-blocks .analytics-article-image.wide{
    width:100%;
    margin:28px 0;
    transform:none;
  }

  .analytics-detail-page .article-body-blocks .analytics-article-image img{
    border-radius:18px;
  }

  .analytics-detail-page .article-body-blocks .analytics-article-image.background{
    border-radius:22px;
    padding:14px;
  }

  .analytics-documents{
    margin-top:42px;
  }

  .analytics-document{
    padding:18px;
    border-radius:24px;
  }

  .analytics-document-head{
    flex-direction:column;
    gap:16px;
  }

  .analytics-document-actions{
    width:100%;
    justify-content:flex-start;
  }

  .pdf-toolbar{
    gap:6px;
    overflow-x:auto;
  }

  .pdf-canvas-shell{
    height:430px;
    max-height:68vh;
    padding:10px;
  }

  .pdf-lightbox{
    padding:6px;
    align-items:stretch;
  }

  .pdf-lightbox-panel{
    width:100%;
    height:calc(100dvh - 12px);
    max-height:calc(100dvh - 12px);
    border-radius:18px;
  }

  .pdf-lightbox-header{
    min-height:50px;
    height:auto;
    flex-basis:auto;
    flex-wrap:wrap;
    gap:8px;
    padding:10px;
  }

  .pdf-lightbox-title{
    flex:1 1 100%;
    order:1;
  }

  .pdf-lightbox-actions{
    order:2;
    margin-left:0;
  }

  .pdf-lightbox-close{
    order:3;
    margin-left:auto;
  }

  .pdf-lightbox-toolbar{
    gap:6px;
    overflow-x:auto;
  }

  .pdf-lightbox-shell{
    padding:8px;
  }

  .analytics-detail-page .article-cta{
    align-items:flex-start;
    flex-direction:column;
    padding:24px;
    border-radius:24px;
  }

  .analytics-detail-page .cta-options{
    justify-content:flex-start;
  }
}

@media (max-width:420px){
  .analytics-card{
    padding:22px;
    border-radius:24px;
  }

  .analytics-card-top{
    font-size:.68rem;
  }
}

/* Keep editable card copy aligned without making content fit the layout. */
@media (min-width:761px){
  .case-card h3,
  .practice-card h3,
  .land-card h3,
  .blog-card h3,
  .analytics-card:not(.accent) h3{
    min-height:2.4em;
    min-height:2lh;
  }
}

.land-card dl{
  margin-top:auto;
}

.land-card .land-link{
  margin-top:0;
}

/* Keep two-column partner cards visually aligned when tag counts differ. */
.partner-info{
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
}

.partner-contacts{
  margin-top:auto;
  padding-top:18px;
}

@media (min-width:761px){
  .partner-info .chips{
    min-height:110px;
    align-content:flex-start;
  }
}

@media (max-width:760px){
  .partner-contacts{
    margin-top:18px;
    padding-top:0;
  }
}
