/* ════════════════════════════════════════
   Atlas GS · pages prestations, secteurs, zone et guide
   Même charte que l'accueil : fond brun très sombre, crème, un seul accent orange.
   ════════════════════════════════════════ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;scroll-padding-top:90px}

:root{
  --or:#e07a26;
  --or-soft:rgba(224,122,38,.08);
  --or-line:rgba(224,122,38,.18);
  --ro:#a83942;
  --bg:#0c0a08;
  --bg-2:#13100d;
  --bg-3:#1a1612;
  --line:rgba(245,240,232,.06);
  --line-2:rgba(245,240,232,.10);
  --cream:#f5f0e8;
  --cream-70:rgba(245,240,232,.72);
  --cream-50:rgba(245,240,232,.52);
  --cream-30:rgba(245,240,232,.30);
  --gray:#9c948a;
}

body{
  background:var(--bg);color:var(--cream);
  font-family:'DM Sans',-apple-system,sans-serif;font-weight:400;
  overflow-x:hidden;line-height:1.6;
}
body::before{
  content:'';position:fixed;inset:0;pointer-events:none;z-index:1;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.06 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
  opacity:.4;mix-blend-mode:overlay;
}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}
strong{font-weight:500;color:var(--cream)}

/* ── Navigation ── */
.nav{
  position:sticky;top:0;z-index:200;
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
  padding:1.1rem 2.5rem;
  background:rgba(12,10,8,.85);
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  border-bottom:1px solid var(--line);
}
.nav-left{display:flex;align-items:center;gap:.85rem;transition:opacity .2s}
.nav-left:hover{opacity:.75}
.nav-logo{width:42px;height:42px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.nav-logo img{width:42px;height:42px;object-fit:contain;filter:invert(1) brightness(1.3)}
.nav-brand{display:block;font-family:'Outfit',sans-serif;font-size:1.1rem;font-weight:500;letter-spacing:.04em;color:var(--cream)}
.nav-brand-sm{display:block;font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gray);margin-top:1px;font-family:'JetBrains Mono',monospace}
.nav-links{display:flex;gap:2.2rem;list-style:none}
.nav-links a{font-size:.82rem;color:var(--cream-70);transition:color .25s}
.nav-links a:hover,.nav-links a[aria-current]{color:var(--or)}
.nav-right{display:flex;align-items:center;gap:.6rem}
.nav-cta{
  display:inline-flex;align-items:center;gap:.5rem;
  background:var(--or);color:#fff;
  padding:.65rem 1.2rem;border-radius:999px;
  font-size:.78rem;font-weight:500;letter-spacing:.04em;
  transition:transform .25s cubic-bezier(.16,1,.3,1),background .25s;
  box-shadow:0 4px 14px -4px rgba(224,122,38,.4);
}
.nav-cta:hover{background:#c96a1f;transform:translateY(-1px)}
.nav-cta:active{transform:translateY(0) scale(.98)}
.nav-cta svg{width:14px;height:14px;stroke:#fff;stroke-width:2;fill:none}

/* ── Boutons ── */
.btn-primary{
  display:inline-flex;align-items:center;gap:.55rem;
  background:var(--or);color:#fff;
  padding:.95rem 1.7rem;border-radius:999px;
  font-size:.85rem;font-weight:500;letter-spacing:.02em;
  transition:transform .25s cubic-bezier(.16,1,.3,1),background .25s,box-shadow .25s;
  box-shadow:0 8px 24px -8px rgba(224,122,38,.5),inset 0 1px 0 rgba(255,255,255,.15);
}
.btn-primary:hover{background:#c96a1f;transform:translateY(-2px)}
.btn-primary:active{transform:translateY(-1px) scale(.98)}
.btn-primary svg{width:16px;height:16px;stroke:#fff;stroke-width:2;fill:none;transition:transform .3s}
.btn-primary:hover svg{transform:translateX(3px)}
.btn-ghost{
  display:inline-flex;align-items:center;gap:.55rem;
  padding:.95rem 1.6rem;border:1px solid var(--line-2);border-radius:999px;
  color:var(--cream);font-size:.85rem;letter-spacing:.02em;
  background:rgba(245,240,232,.02);
  transition:border-color .25s,color .25s,background .25s,transform .25s;
}
.btn-ghost:hover{border-color:var(--or);color:var(--or);background:var(--or-soft)}
.btn-ghost:active{transform:scale(.98)}
.btn-ghost svg{width:15px;height:15px;stroke:var(--or);stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}

.txt-link{color:var(--or);border-bottom:1px solid var(--or-line);transition:border-color .2s}
.txt-link:hover{border-color:var(--or)}

/* ── Hero des pages ── */
.p-hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line)}
.p-hero-bg{
  position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(ellipse at 76% 40%, rgba(224,122,38,.14) 0%, transparent 55%),
    radial-gradient(ellipse at 12% 85%, rgba(168,57,66,.06) 0%, transparent 50%);
}
.p-hero-grid{
  position:absolute;inset:0;pointer-events:none;opacity:.4;
  background-image:linear-gradient(rgba(245,240,232,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(245,240,232,.025) 1px,transparent 1px);
  background-size:64px 64px;
  mask-image:radial-gradient(ellipse at 50% 40%,black 30%,transparent 80%);
  -webkit-mask-image:radial-gradient(ellipse at 50% 40%,black 30%,transparent 80%);
}
.p-hero-inner{
  position:relative;z-index:2;
  max-width:1400px;margin:0 auto;
  padding:2.6rem 3.5rem 4.5rem;
  display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;align-items:center;
}
.p-hero-inner.solo{grid-template-columns:minmax(0,860px)}
.p-eyebrow{
  display:inline-flex;align-items:center;gap:.6rem;
  padding:.4rem .85rem;border:1px solid var(--or-line);border-radius:999px;
  font-family:'JetBrains Mono',monospace;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--or);
  margin-bottom:1.2rem;
}
.p-eyebrow .pulse{width:6px;height:6px;border-radius:50%;background:var(--or);animation:pulse 2.4s cubic-bezier(.4,0,.6,1) infinite}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(224,122,38,.5)}50%{box-shadow:0 0 0 8px rgba(224,122,38,0)}}
.p-h1{
  font-family:'Outfit',sans-serif;font-weight:400;
  font-size:clamp(2.1rem,4.3vw,3.5rem);line-height:1.06;letter-spacing:-.025em;
  color:var(--cream);margin-bottom:1.2rem;max-width:16ch;
}
.p-hero-inner.solo .p-h1{max-width:20ch}
.p-h1 em{color:var(--or);font-style:italic;font-weight:500}
.p-lead{font-size:1.04rem;font-weight:300;color:var(--cream-70);line-height:1.7;max-width:540px;margin-bottom:1.8rem}
.p-lead strong{font-weight:500}
.p-actions{display:flex;gap:.8rem;flex-wrap:wrap}
.p-facts{
  display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:2.4rem;
  margin-top:2.2rem;padding-top:1.4rem;border-top:1px solid var(--line);max-width:540px;
}
.p-fact{display:flex;flex-direction:column;gap:.25rem}
.p-fact-n{font-family:'Outfit',sans-serif;font-size:1.55rem;font-weight:500;line-height:1;letter-spacing:-.02em;color:var(--cream)}
.p-fact-n em{color:var(--or);font-style:normal}
.p-fact-l{font-family:'JetBrains Mono',monospace;font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--cream-50)}

.p-visual{position:relative;display:flex;align-items:center;justify-content:center;min-height:440px}
.p-visual::before{
  content:'';position:absolute;width:78%;aspect-ratio:1;border-radius:50%;
  background:radial-gradient(circle,rgba(224,122,38,.22) 0%,rgba(224,122,38,0) 65%);
  filter:blur(10px);
}
.p-visual img{
  position:relative;height:440px;width:auto;max-width:100%;object-fit:contain;
  filter:drop-shadow(0 25px 40px rgba(0,0,0,.55));
  animation:float 7s ease-in-out infinite;
}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.p-visual-tag{
  position:absolute;left:8%;bottom:10%;z-index:2;
  padding:.45rem .8rem;border-radius:999px;
  background:rgba(19,16,13,.88);border:1px solid var(--or-line);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  font-family:'JetBrains Mono',monospace;font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:var(--cream-70);
}
.p-visual-tag b{color:var(--or);font-weight:500}

/* ── Sections ── */
section{position:relative;z-index:2}
.p-sec{border-bottom:1px solid var(--line)}
.p-sec.alt{background:var(--bg-2)}
.sec-wrap{max-width:1400px;margin:0 auto;padding:5.5rem 3.5rem}
.sec-header{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin-bottom:3.4rem;align-items:end}
.sec-header.single{grid-template-columns:minmax(0,720px)}
.sec-eyebrow{
  display:inline-flex;align-items:center;gap:.5rem;
  font-family:'JetBrains Mono',monospace;font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:var(--or);
  margin-bottom:1.1rem;
}
.sec-eyebrow::before{content:'';width:24px;height:1px;background:var(--or)}
.sec-title{
  font-family:'Outfit',sans-serif;font-weight:400;
  font-size:clamp(1.8rem,3.3vw,2.7rem);line-height:1.08;letter-spacing:-.02em;color:var(--cream);
}
.sec-title em{color:var(--or);font-style:italic;font-weight:500}
.sec-sub{font-size:.98rem;color:var(--cream-70);line-height:1.7;max-width:520px}

/* ── Lignes numérotées (pas de cartes) ── */
.p-rows{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.p-row{
  display:grid;grid-template-columns:72px minmax(0,1fr) minmax(0,1.3fr);gap:2rem;align-items:baseline;
  padding:1.6rem 0;border-bottom:1px solid var(--line);
  transition:background .3s;
}
.p-row:hover{background:linear-gradient(90deg,rgba(224,122,38,.04),transparent 60%)}
.p-row-n{font-family:'JetBrains Mono',monospace;font-size:.72rem;letter-spacing:.2em;color:var(--or)}
.p-row-t{font-family:'Outfit',sans-serif;font-size:1.22rem;font-weight:400;color:var(--cream);line-height:1.3}
.p-row-d{font-size:.94rem;color:var(--cream-70);line-height:1.65}

/* ── Rangées machines (zig-zag) ── */
.p-models{display:flex;flex-direction:column}
.p-model{
  display:grid;grid-template-columns:.9fr 1.1fr;gap:4rem;align-items:center;
  padding:3.4rem 0;border-top:1px solid var(--line);
}
.p-model:nth-child(even) .p-model-img{order:2}
.p-model-img{position:relative;display:flex;align-items:center;justify-content:center;min-height:320px}
.p-model-img::before{content:'';position:absolute;inset:8%;background:radial-gradient(ellipse at center,rgba(224,122,38,.12) 0%,transparent 65%)}
.p-model-img img{position:relative;height:320px;width:auto;object-fit:contain;filter:drop-shadow(0 22px 36px rgba(0,0,0,.55));transition:transform .6s cubic-bezier(.16,1,.3,1)}
.p-model:hover .p-model-img img{transform:translateY(-6px)}
.p-model-tag{font-family:'JetBrains Mono',monospace;font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--or);margin-bottom:.8rem}
.p-model-name{font-family:'Outfit',sans-serif;font-size:clamp(1.5rem,2.6vw,2rem);font-weight:400;letter-spacing:-.02em;line-height:1.1;margin-bottom:.9rem}
.p-model-d{font-size:.96rem;color:var(--cream-70);line-height:1.7;max-width:520px;margin-bottom:1.2rem}
.p-specs{display:flex;flex-wrap:wrap;gap:.5rem}
.p-spec{
  padding:.4rem .75rem;border-radius:999px;border:1px solid var(--line-2);
  font-size:.78rem;color:var(--cream-70);background:rgba(245,240,232,.02);
}

/* ── Texte + encadré ── */
.p-split{display:grid;grid-template-columns:1.25fr .75fr;gap:4rem;align-items:start}
.p-prose{max-width:68ch}
.p-prose p{font-size:1rem;color:var(--cream-70);line-height:1.8;margin-bottom:1.1rem}
.p-prose h2{font-family:'Outfit',sans-serif;font-weight:400;font-size:clamp(1.5rem,2.6vw,2rem);letter-spacing:-.02em;line-height:1.15;color:var(--cream);margin:2.6rem 0 1rem}
.p-prose h2:first-child{margin-top:0}
.p-prose h2 em{color:var(--or);font-style:italic;font-weight:500}
.p-prose h3{font-family:'Outfit',sans-serif;font-weight:500;font-size:1.12rem;color:var(--cream);margin:1.8rem 0 .6rem}
.p-prose ul,.p-prose ol{margin:0 0 1.2rem;padding:0;list-style:none;display:flex;flex-direction:column;gap:.55rem}
.p-prose li{position:relative;padding-left:1.4rem;font-size:.98rem;color:var(--cream-70);line-height:1.7}
.p-prose ul li::before{content:'';position:absolute;left:0;top:.8em;width:12px;height:1px;background:var(--or)}
.p-prose ol{counter-reset:etape}
.p-prose ol li{counter-increment:etape;padding-left:2.4rem}
.p-prose ol li::before{content:counter(etape,decimal-leading-zero);position:absolute;left:0;top:.15em;font-family:'JetBrains Mono',monospace;font-size:.72rem;color:var(--or);letter-spacing:.1em}
.p-prose a{color:var(--or);border-bottom:1px solid var(--or-line)}
.p-prose a:hover{border-color:var(--or)}

.p-note{
  position:sticky;top:110px;
  padding:1.6rem 1.6rem 1.5rem;border-radius:18px;
  background:var(--bg-3);border:1px solid var(--line);
  box-shadow:inset 0 1px 0 rgba(245,240,232,.04);
}
.p-note-lbl{font-family:'JetBrains Mono',monospace;font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--or);margin-bottom:.8rem;display:block}
.p-note p{font-size:.92rem;color:var(--cream-70);line-height:1.7;margin-bottom:.8rem}
.p-note p:last-child{margin-bottom:0}
.p-note-big{font-family:'Outfit',sans-serif;font-size:2.4rem;font-weight:500;letter-spacing:-.03em;line-height:1;color:var(--cream);margin-bottom:.5rem}
.p-note-big em{color:var(--or);font-style:normal}

/* ── Tableau ── */
.p-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:18px;background:var(--bg-2)}
.p-table{width:100%;border-collapse:collapse;min-width:560px}
.p-table th{
  text-align:left;padding:1rem 1.3rem;border-bottom:1px solid var(--line-2);
  font-family:'JetBrains Mono',monospace;font-size:.64rem;font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:var(--or);
}
.p-table td{padding:1rem 1.3rem;border-bottom:1px solid var(--line);font-size:.92rem;color:var(--cream-70);vertical-align:top;line-height:1.55}
.p-table tr:last-child td{border-bottom:none}
.p-table td:first-child{color:var(--cream)}
.p-table .num{font-family:'JetBrains Mono',monospace;font-size:.84rem;color:var(--cream);white-space:nowrap}

/* ── Liens vers les pages voisines ── */
.p-links{display:grid;grid-template-columns:1fr 1fr;gap:0 3rem;border-top:1px solid var(--line)}
.p-link{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:center;
  padding:1.3rem 0;border-bottom:1px solid var(--line);
}
.p-link-t{display:block;font-family:'Outfit',sans-serif;font-size:1.12rem;color:var(--cream);transition:color .25s}
.p-link-d{display:block;font-size:.86rem;color:var(--cream-50);margin-top:.15rem}
.p-link svg{width:18px;height:18px;stroke:var(--or);stroke-width:1.8;fill:none;transition:transform .3s cubic-bezier(.16,1,.3,1)}
.p-link:hover .p-link-t{color:var(--or)}
.p-link:hover svg{transform:translateX(4px)}

/* ── Grandes rangées (secteurs) ── */
.p-big{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.p-big-row{
  display:grid;grid-template-columns:72px minmax(0,1.1fr) minmax(0,1fr) 40px;gap:2rem;align-items:center;
  padding:2rem 0;border-bottom:1px solid var(--line);
}
.p-big-row .n{font-family:'JetBrains Mono',monospace;font-size:.72rem;letter-spacing:.2em;color:var(--or)}
.p-big-row .t{font-family:'Outfit',sans-serif;font-size:clamp(1.4rem,2.4vw,1.9rem);letter-spacing:-.02em;line-height:1.15;color:var(--cream);transition:color .25s}
.p-big-row .d{font-size:.92rem;color:var(--cream-70);line-height:1.65}
.p-big-row svg{width:22px;height:22px;stroke:var(--or);stroke-width:1.6;fill:none;justify-self:end;transition:transform .3s cubic-bezier(.16,1,.3,1)}
a.p-big-row:hover .t{color:var(--or)}
a.p-big-row:hover svg{transform:translateX(5px)}
.p-big-row.static .t{color:var(--cream-70)}

/* ── Départements (zone) ── */
.p-depts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem}
.p-dept{border:1px solid var(--line);border-radius:18px;padding:1.7rem;background:var(--bg-2)}
.p-dept:first-child{grid-row:span 2}
.p-dept-lbl{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding-bottom:.8rem;margin-bottom:1rem;border-bottom:1px solid var(--or-line)}
.p-dept-lbl b{font-family:'Outfit',sans-serif;font-size:1.3rem;font-weight:500;color:var(--cream)}
.p-dept-lbl span{font-family:'JetBrains Mono',monospace;font-size:.7rem;letter-spacing:.2em;color:var(--or)}
.p-dept p{font-size:.92rem;color:var(--cream-70);line-height:1.7;margin-bottom:.9rem}
.p-dept ul{list-style:none;display:flex;flex-direction:column}
.p-dept li{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0;border-bottom:1px solid var(--line);font-size:.92rem;color:var(--cream)}
.p-dept li:last-child{border-bottom:none}
.p-dept li span{font-family:'JetBrains Mono',monospace;font-size:.8rem;color:var(--cream-50);white-space:nowrap}

/* ── FAQ ── */
.faq-list{display:flex;flex-direction:column;gap:.7rem;max-width:860px}
.faq-item{background:var(--bg-3);border:1px solid var(--line);border-radius:14px;transition:border-color .25s;overflow:hidden}
.faq-item:hover,.faq-item[open]{border-color:var(--or-line)}
.faq-item[open]{background:var(--bg-2)}
.faq-item summary{
  cursor:pointer;list-style:none;
  font-family:'Outfit',sans-serif;font-weight:500;font-size:1rem;color:var(--cream);
  padding:1.1rem 1.4rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;
  -webkit-tap-highlight-color:transparent;transition:color .2s;
}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:'+';font-size:1.4rem;font-weight:300;color:var(--or);transition:transform .35s cubic-bezier(.16,1,.3,1);flex-shrink:0}
.faq-item[open] summary::after{transform:rotate(45deg)}
.faq-item summary:hover{color:var(--or)}
.faq-item p{padding:0 1.4rem 1.2rem;font-size:.93rem;color:var(--cream-70);line-height:1.7}
.faq-item p a{color:var(--or);border-bottom:1px solid var(--or-line)}

/* ── Appel final ── */
.p-cta{position:relative;overflow:hidden;background:var(--bg-2);border-bottom:1px solid var(--line)}
.p-cta::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 85% 50%,rgba(224,122,38,.12) 0%,transparent 55%);pointer-events:none}
.p-cta-inner{position:relative;max-width:1400px;margin:0 auto;padding:5rem 3.5rem;display:grid;grid-template-columns:1.2fr .8fr;gap:3rem;align-items:end}
.p-cta h2{font-family:'Outfit',sans-serif;font-weight:400;font-size:clamp(1.9rem,3.6vw,2.9rem);line-height:1.06;letter-spacing:-.02em}
.p-cta h2 em{color:var(--or);font-style:italic;font-weight:500}
.p-cta p{font-size:.98rem;color:var(--cream-70);line-height:1.7;margin-top:1rem;max-width:520px}
.p-cta-side{display:flex;flex-direction:column;gap:.8rem;align-items:flex-start}
.p-cta-meta{font-family:'JetBrains Mono',monospace;font-size:.7rem;letter-spacing:.12em;color:var(--cream-50);margin-top:.4rem}
.p-cta-meta a{color:var(--cream);transition:color .2s}
.p-cta-meta a:hover{color:var(--or)}

/* ── Apparitions ── */
.reveal{opacity:0;transform:translateY(20px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none}
  .p-visual img{animation:none}
}

/* ── Responsive ── */
@media(max-width:1024px){
  .nav{padding:.9rem 1.4rem}
  .nav-links{display:none}
  .p-hero-inner{grid-template-columns:1fr;gap:1.5rem;padding:1.8rem 1.4rem 3.2rem}
  .p-visual{min-height:300px;order:-1}
  .p-visual img{height:300px}
  .sec-wrap{padding:3.8rem 1.4rem}
  .sec-header{grid-template-columns:1fr;gap:1.1rem;margin-bottom:2.4rem}
  .p-row{grid-template-columns:52px minmax(0,1fr);gap:.4rem 1rem}
  .p-row-d{grid-column:2}
  .p-model{grid-template-columns:1fr;gap:1.4rem;padding:2.6rem 0}
  .p-model:nth-child(even) .p-model-img{order:0}
  .p-model-img{min-height:240px}
  .p-model-img img{height:240px}
  .p-split{grid-template-columns:1fr;gap:2rem}
  .p-note{position:static}
  .p-links{grid-template-columns:1fr}
  .p-big-row{grid-template-columns:44px minmax(0,1fr) 28px;gap:.4rem 1rem;padding:1.5rem 0}
  .p-big-row .d{grid-column:2;grid-row:2}
  .p-big-row svg{grid-column:3;grid-row:1}
  .p-depts{grid-template-columns:1fr}
  .p-dept:first-child{grid-row:auto}
  .p-cta-inner{grid-template-columns:1fr;padding:3.6rem 1.4rem;gap:1.6rem}
}
@media(max-width:680px){
  .nav-cta{padding:.55rem .9rem;font-size:.74rem}
  .nav-cta span{display:none}
  .p-h1{font-size:clamp(1.85rem,8vw,2.5rem)}
  .p-lead{font-size:.96rem}
  .p-facts{grid-template-columns:repeat(3,1fr);gap:1rem}
  .p-fact-n{font-size:1.2rem}
  .p-fact-l{font-size:.56rem;letter-spacing:.1em}
  .p-visual{min-height:250px}
  .p-visual img{height:250px}
  .btn-primary,.btn-ghost{padding:.8rem 1.25rem;font-size:.82rem}
  .sec-wrap{padding:3rem 1.2rem}
  .sec-title{font-size:1.65rem}
  .p-row-t{font-size:1.08rem}
  .p-dept{padding:1.3rem}
  .faq-item summary{font-size:.93rem;padding:.95rem 1.1rem}
  .faq-item p{padding:0 1.1rem 1rem;font-size:.88rem}
}
@media(max-width:400px){
  .nav-brand-sm{display:none}
  .nav-brand{font-size:.95rem}
  .nav-logo,.nav-logo img{width:36px;height:36px}
}
