:root{
  --green:#0b8043;
  --green-dark:#095e31;
  --green-light:#e6f4ec;
  --ink:#202124;
  --ink-soft:#3c4043;
  --muted:#5f6368;
  --muted-light:#80868b;
  --line:#dadce0;
  --line-soft:#e8eaed;
  --bg:#ffffff;
  --bg-soft:#f8f9fa;
  --bg-card:#ffffff;
  --shadow-sm:0 1px 2px rgba(60,64,67,0.1), 0 1px 3px rgba(60,64,67,0.06);
  --shadow-md:0 1px 3px rgba(60,64,67,0.12), 0 4px 8px rgba(60,64,67,0.08);
  --shadow-lg:0 2px 6px rgba(60,64,67,0.14), 0 8px 24px rgba(60,64,67,0.1);
  --radius:12px;
  --radius-sm:8px;
  /* per-page accent hook; defaults to green */
  --amber:var(--green);
}
*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{
  background:var(--bg);
  color:var(--ink);
  font-family:'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
h1,h2,h3{font-family:'Inter', sans-serif; font-weight:700; letter-spacing:-0.02em; color:var(--ink); line-height:1.25;}
.mono{font-family:'Roboto Mono', ui-monospace, 'SF Mono', Menlo, monospace;}
a{color:var(--green);}
.wrap{max-width:1080px; margin:0 auto; padding:0 24px;}

@media (prefers-reduced-motion: reduce){ *{animation:none !important; transition:none !important;} }

/* ---------- NAV ---------- */
header.site{
  position:sticky; top:0; z-index:50;
  background:rgba(255,255,255,0.92);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line-soft);
}
.nav{display:flex; align-items:center; justify-content:space-between; padding:14px 24px;}
.brand{display:flex; align-items:center; gap:10px; font-weight:700; font-size:1.1rem; text-decoration:none; color:var(--ink);}
.brand .logo-img{width:32px; height:32px; border-radius:8px; display:block;}
.brand .tab{
  background:var(--green); color:#fff; font-family:'Roboto Mono', monospace;
  font-size:0.62rem; font-weight:600; letter-spacing:0.06em; padding:4px 7px; border-radius:6px;
}
.nav-links{display:flex; gap:22px; font-size:0.92rem; align-items:center;}
.nav-links a{text-decoration:none; color:var(--muted); font-weight:500; transition:color .15s; display:inline-flex; align-items:center; gap:6px;}
.nav-links a svg{width:16px; height:16px; stroke-width:2;}
.nav-links a:hover, .nav-links a.active{color:var(--green);}
.nav-links a.nav-cta{
  background:var(--green); color:#fff; padding:8px 16px; border-radius:20px; font-weight:600;
  box-shadow:var(--shadow-sm); transition:background .15s, box-shadow .15s;
}
.nav-links a.nav-cta:hover{background:var(--green-dark); color:#fff; box-shadow:var(--shadow-md);}
.nav-links a.nav-cta svg{color:#fff;}
.nav-links a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible{
  outline:2px solid var(--green); outline-offset:2px;
}

/* ---------- BUTTONS ---------- */
.btn{
  display:inline-flex; align-items:center; gap:8px; padding:12px 24px; border-radius:24px;
  font-weight:600; font-size:0.94rem; text-decoration:none; border:1px solid transparent; cursor:pointer;
  font-family:'Inter', sans-serif; transition:box-shadow .15s ease, background .15s ease, transform .1s ease;
}
.btn:active{transform:translateY(1px);}
.btn-primary{background:var(--green); color:#fff; box-shadow:var(--shadow-sm);}
.btn-primary:hover{background:var(--green-dark); box-shadow:var(--shadow-md);}
.btn-ghost{background:#fff; color:var(--green); border-color:var(--line);}
.btn-ghost:hover{background:var(--green-light); border-color:var(--green-light);}

/* ---------- HERO ---------- */
.hero{padding:72px 0 64px; background:linear-gradient(180deg, var(--bg-soft) 0%, #fff 100%); border-bottom:1px solid var(--line-soft);}
.hero-grid{display:grid; grid-template-columns:1.1fr 0.9fr; gap:52px; align-items:center;}
.eyebrow{
  font-family:'Roboto Mono', monospace; font-size:0.72rem; letter-spacing:0.08em; text-transform:uppercase;
  color:var(--green); margin-bottom:16px; display:inline-block; background:var(--green-light);
  padding:6px 12px; border-radius:20px; font-weight:600;
}
.hero h1{font-size:2.9rem; line-height:1.12; margin-bottom:18px; color:var(--ink);}
.hero h1 em{font-style:normal; color:var(--green);}
.hero p.lead{font-size:1.1rem; color:var(--muted); max-width:46ch; margin-bottom:30px;}
.cta-row{display:flex; gap:12px; flex-wrap:wrap;}

/* Clean document mockup */
.hero-art{display:flex; justify-content:center; align-items:center;}
.hero-art img{width:100%; max-width:520px; height:auto; display:block;}

/* Featured CV Builder banner */
.featured-cv{
  display:flex; align-items:center; gap:26px; color:var(--ink);
  background:linear-gradient(120deg, #f2faf5 0%, #eaf6ef 100%);
  border:1px solid #cdeddc; border-radius:16px; padding:28px 32px;
}
.featured-cv-icon{
  flex-shrink:0; width:64px; height:64px; border-radius:16px; background:var(--green);
  display:flex; align-items:center; justify-content:center; box-shadow:var(--shadow-md);
}
.featured-cv-icon svg{width:32px; height:32px; color:#fff;}
.featured-cv-text{flex:1;}
.featured-badge{
  display:inline-block; font-family:'Roboto Mono', monospace; font-size:0.66rem; font-weight:700;
  letter-spacing:0.04em; color:#fff; background:var(--green); padding:4px 10px; border-radius:12px; margin-bottom:8px;
}
.featured-cv-text h2{font-size:1.4rem; margin-bottom:6px;}
.featured-cv-text p{color:var(--muted); font-size:0.94rem; line-height:1.55; max-width:60ch;}
.featured-cv-cta{
  flex-shrink:0; background:var(--green); color:#fff; font-weight:600; font-size:0.92rem; text-decoration:none;
  padding:12px 22px; border-radius:24px; box-shadow:var(--shadow-sm); white-space:nowrap;
  transition:background .15s, box-shadow .15s;
}
.featured-cv-cta:hover{background:var(--green-dark); box-shadow:var(--shadow-md);}
@media (max-width:760px){
  .featured-cv{flex-direction:column; text-align:center; align-items:center;}
  .featured-cv-text p{max-width:none;}
}

.doc-wrap{position:relative; display:flex; justify-content:center;}
.doc{
  background:#fff; color:var(--ink); width:100%; max-width:340px;
  padding:32px 30px; border-radius:var(--radius); box-shadow:var(--shadow-lg); position:relative;
  border:1px solid var(--line-soft);
}
.doc .name{font-weight:700; font-size:1.2rem; margin-bottom:2px;}
.doc .role{color:var(--muted); font-size:0.82rem; margin-bottom:18px;}
.doc .line{height:8px; background:var(--line-soft); border-radius:4px; margin-bottom:10px;}
.doc .line.w80{width:80%;} .doc .line.w60{width:60%;} .doc .line.w95{width:95%;}
.doc mark{ background:var(--green-light); padding:1px 2px; border-radius:2px; }
.doc .redline{ position:absolute; border:1.5px solid var(--green); border-radius:4px; opacity:0.5; }
.doc .pill{
  position:absolute; background:var(--green); color:#fff; font-family:'Roboto Mono', monospace;
  font-size:0.66rem; padding:7px 12px; border-radius:20px; box-shadow:var(--shadow-md); font-weight:500;
}
.doc .pill.p1{top:-14px; right:-16px;}
.doc .pill.p2{bottom:24px; left:-24px; background:var(--ink);}

/* ---------- SECTION HEADS ---------- */
section.tools-intro{padding:56px 0 8px;}
.section-head{max-width:60ch; margin-bottom:36px;}
.section-head .eyebrow{margin-bottom:14px;}
.section-head h2{font-size:1.8rem; margin-bottom:10px;}
.section-head p{color:var(--muted); font-size:1.02rem;}

/* ---------- TOOL CARD GRID ---------- */
.index-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px; padding:0 0 72px;}
.index-grid-7{grid-template-columns:repeat(3,1fr);}
.index-card{
  background:var(--bg-card); color:var(--ink); border-radius:var(--radius); padding:26px 22px;
  text-decoration:none; display:block; position:relative; border:1px solid var(--line-soft);
  transition:box-shadow .18s ease, transform .18s ease, border-color .18s ease;
}
.index-card:hover{transform:translateY(-3px); box-shadow:var(--shadow-lg); border-color:var(--line);}
.index-card .tabtop{
  display:inline-flex; align-items:center; justify-content:center;
  width:42px; height:42px; border-radius:10px; background:var(--green-light); color:var(--green);
  font-family:'Roboto Mono', monospace; font-size:0.6rem; font-weight:700; letter-spacing:0.04em; margin-bottom:14px;
}
.index-card h3{font-size:1.12rem; margin-bottom:8px; color:var(--ink);}
.index-card p{font-size:0.9rem; color:var(--muted); line-height:1.55;}
.index-card .go{margin-top:14px; font-size:0.85rem; font-weight:600; color:var(--green);}

/* ---------- TOOL SECTIONS ---------- */
.tool-section{
  scroll-margin-top:80px;
  background:#fff; color:var(--ink); border-radius:var(--radius); margin-bottom:24px;
  overflow:hidden; border:1px solid var(--line-soft); box-shadow:var(--shadow-sm);
}
.tool-head{
  display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap;
  padding:24px 28px; border-bottom:1px solid var(--line-soft); background:var(--bg-soft);
}
.tool-head .tag{
  font-family:'Roboto Mono', monospace; font-size:0.66rem; letter-spacing:0.06em; color:var(--green);
  background:var(--green-light); padding:5px 10px; border-radius:14px; display:inline-block; margin-bottom:8px; font-weight:600;
}
.tool-head h3{font-size:1.3rem;}
.tool-body{padding:28px;}
label{display:block; font-size:0.86rem; font-weight:600; margin-bottom:7px; color:var(--ink-soft);}
input[type=text], input[type=number], input[type=email], textarea, select{
  width:100%; padding:11px 13px; border:1px solid var(--line); border-radius:var(--radius-sm); background:#fff;
  font-family:'Inter', sans-serif; font-size:0.94rem; color:var(--ink); margin-bottom:18px; transition:border-color .15s, box-shadow .15s;
}
input:focus, textarea:focus, select:focus{border-color:var(--green); box-shadow:0 0 0 3px rgba(11,128,67,0.12);}
textarea{resize:vertical; min-height:110px;}
.grid2{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
.grid3{display:grid; grid-template-columns:1fr 1fr 1fr; gap:20px;}
.btn-tool{
  background:var(--green); color:#fff; border:none; padding:12px 26px; border-radius:24px;
  font-weight:600; font-size:0.92rem; cursor:pointer; font-family:'Inter', sans-serif; box-shadow:var(--shadow-sm);
  transition:background .15s, box-shadow .15s;
}
.btn-tool:hover{background:var(--green-dark); box-shadow:var(--shadow-md);}
.btn-secondary{
  background:#fff; border:1px solid var(--line); color:var(--ink-soft); padding:11px 20px; border-radius:24px;
  font-weight:600; font-size:0.86rem; cursor:pointer; font-family:'Inter', sans-serif; transition:background .15s;
}
.btn-secondary:hover{background:var(--bg-soft);}
.result{margin-top:26px; padding-top:24px; border-top:1px solid var(--line-soft); display:none;}
.result.show{display:block;}
.score-row{display:flex; align-items:baseline; gap:14px; margin-bottom:16px;}
.score-num{font-size:2.6rem; font-weight:800; color:var(--green);}
.score-label{font-family:'Roboto Mono', monospace; font-size:0.72rem; letter-spacing:0.05em; color:var(--muted);}
.bar{height:8px; background:var(--line-soft); border-radius:4px; overflow:hidden; margin-bottom:20px;}
.bar-fill{height:100%; background:var(--green); border-radius:4px; transition:width .5s ease;}
.kw-list{display:flex; flex-wrap:wrap; gap:8px; margin-top:6px;}
.kw{
  font-family:'Roboto Mono', monospace; font-size:0.76rem; padding:5px 11px; border-radius:14px;
  background:var(--green-light); color:var(--green-dark); border:1px solid #cfe8da; font-weight:500;
}
.kw.missing{background:#fce8e6; color:#c5221f; border-color:#f7cfca;}
.letter-output{
  background:var(--bg-soft); border:1px solid var(--line-soft); border-radius:var(--radius-sm); padding:20px 22px; white-space:pre-wrap;
  font-size:0.93rem; line-height:1.7; margin-top:6px; color:var(--ink-soft);
}
.salary-out{display:flex; gap:32px; flex-wrap:wrap; align-items:flex-end;}
.salary-figure{font-size:2.1rem; font-weight:800; color:var(--ink);}
.q-item{
  background:var(--bg-soft); border:1px solid var(--line-soft); border-left:3px solid var(--green); border-radius:0 8px 8px 0;
  padding:14px 18px; margin-bottom:12px; font-size:0.95rem; color:var(--ink-soft);
}
.note-inline{font-size:0.82rem; color:var(--muted); margin-top:14px; line-height:1.6;}
.field-hint{font-size:0.8rem; color:var(--muted); margin:-12px 0 16px;}
.copy-msg{font-family:'Roboto Mono', monospace; font-size:0.76rem; color:var(--green); margin-left:12px; display:none; font-weight:600;}
.copy-msg.show{display:inline;}

/* ---------- REPEATABLE ENTRIES ---------- */
.cv-entry{ border:1px solid var(--line-soft); border-radius:var(--radius-sm); padding:20px 20px 8px; margin-bottom:16px; background:var(--bg-soft); }
.entry-row-foot{display:flex; justify-content:flex-end; margin-bottom:14px;}
.remove-entry{padding:8px 14px; font-size:0.78rem;}
.add-entry-btn{margin-bottom:24px;}

/* ---------- COLOUR SWATCHES ---------- */
.swatch-row{display:flex; gap:10px; align-items:center; padding-top:4px; margin-bottom:18px;}
.swatch{ width:30px; height:30px; border-radius:50%; border:2px solid transparent; cursor:pointer; padding:0; transition:transform .12s ease; }
.swatch:hover{transform:scale(1.1);}
.swatch.selected{border-color:var(--ink); box-shadow:0 0 0 2px #fff, 0 0 0 4px var(--ink);}
#cv-photo-field input[type=file]{ padding:9px; font-size:0.85rem; background:#fff; border:1px solid var(--line); border-radius:var(--radius-sm); margin-bottom:4px; }

/* ---------- CV SIMPLE / DOC PREVIEW ---------- */
.cv-page{
  background:#fff; color:#1b1b1b; border:1px solid var(--line-soft); border-radius:var(--radius-sm);
  padding:44px 48px; max-width:720px; margin:0 auto; box-shadow:var(--shadow-sm);
}
.cv-name{font-weight:800; font-size:1.7rem; margin-bottom:2px;}
.cv-headline{color:var(--muted); font-size:0.92rem; margin-bottom:10px;}
.cv-contact{font-family:'Roboto Mono', monospace; font-size:0.76rem; color:var(--ink-soft); margin-bottom:16px;}
.cv-page hr{border:none; border-top:2px solid var(--ink); margin:0 0 18px;}
.cv-section-title{
  font-family:'Roboto Mono', monospace; font-size:0.72rem; letter-spacing:0.08em; text-transform:uppercase;
  color:var(--ink); border-bottom:1px solid var(--line); padding-bottom:5px; margin:22px 0 12px; font-weight:700;
}
.cv-section-title:first-of-type{margin-top:0;}
.cv-summary{font-size:0.92rem; line-height:1.65; margin-bottom:4px; color:var(--ink-soft);}
.cv-block{margin-bottom:16px;}
.cv-block-head{display:flex; justify-content:space-between; align-items:baseline; gap:12px; flex-wrap:wrap;}
.cv-block-title{font-weight:700; font-size:0.95rem;}
.cv-block-sub{font-size:0.85rem; color:var(--muted);}
.cv-block-dates{font-family:'Roboto Mono', monospace; font-size:0.76rem; color:var(--muted); white-space:nowrap;}
.cv-block ul{margin:8px 0 0 18px;}
.cv-block li{font-size:0.88rem; line-height:1.55; margin-bottom:4px; color:var(--ink-soft);}
.cv-skills-row{font-size:0.9rem; line-height:1.7; color:var(--ink-soft);}
.cv-empty-note{font-size:0.85rem; color:var(--muted-light); font-style:italic;}

/* ---------- CROSS-LINKS ---------- */
.cross-link-row{
  display:flex; gap:24px; flex-wrap:wrap; margin:0 0 60px; padding:22px 26px;
  background:var(--green-light); border:1px solid #cfe8da; border-radius:var(--radius);
}
.cross-link{color:var(--green-dark); text-decoration:none; font-size:0.9rem; font-weight:600;}
.cross-link:hover{text-decoration:underline;}

/* ---------- COMPARISON TABLE ---------- */
.compare-table{width:100%; border-collapse:collapse; margin-top:14px;}
.compare-table th, .compare-table td{padding:12px 14px; border-bottom:1px solid var(--line-soft); text-align:left; font-size:0.9rem;}
.compare-table th{ font-family:'Roboto Mono', monospace; font-size:0.68rem; text-transform:uppercase; letter-spacing:0.05em; color:var(--muted); background:var(--bg-soft); font-weight:600;}
.compare-table td.num{font-family:'Roboto Mono', monospace;}
.compare-table tr.total-row td{font-weight:700; border-top:2px solid var(--ink); border-bottom:none;}
.compare-winner{color:var(--green); font-weight:700;}
.compare-verdict{ margin-top:20px; padding:16px 18px; background:var(--green-light); border:1px solid #cfe8da; border-radius:var(--radius-sm); font-size:0.92rem; line-height:1.6; color:var(--ink-soft);}

/* ---------- OUTPUT VARIANTS ---------- */
.output-variant{margin-bottom:22px;}
.output-variant label{display:flex; align-items:center; justify-content:space-between; gap:10px;}
.output-variant .copy-btn{padding:6px 14px; font-size:0.76rem;}

/* ---------- MODERN CV TEMPLATE ---------- */
.cv-modern{
  display:grid; grid-template-columns:35% 65%; background:#fff; color:#1b1b1b;
  border:1px solid var(--line-soft); border-radius:var(--radius-sm); overflow:hidden; max-width:760px; margin:0 auto;
  box-shadow:var(--shadow-sm); -webkit-print-color-adjust:exact; print-color-adjust:exact;
}
.cv-modern-side{ background:var(--cv-accent, #0b8043); color:#fff; padding:34px 24px; }
.cv-modern-main{padding:34px 32px;}
.cv-photo{ width:128px; height:128px; border-radius:50%; overflow:hidden; margin:0 auto 16px; border:3px solid rgba(255,255,255,0.5); background:rgba(255,255,255,0.12); }
.cv-photo img{width:100%; height:100%; object-fit:cover; display:block;}
.cv-photo-placeholder{ width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-family:'Roboto Mono', monospace; font-size:0.68rem; color:rgba(255,255,255,0.6); text-align:center; }
.cv-modern-name{font-weight:800; font-size:1.35rem; text-align:center; line-height:1.2;}
.cv-modern-role{text-align:center; font-size:0.85rem; opacity:0.85; margin:4px 0 6px;}
.cv-side-section-title{ font-family:'Roboto Mono', monospace; font-size:0.68rem; letter-spacing:0.08em; text-transform:uppercase; border-bottom:1px solid rgba(255,255,255,0.3); padding-bottom:6px; margin:22px 0 10px; opacity:0.95; font-weight:600;}
.cv-side-item{font-size:0.82rem; line-height:1.55; margin-bottom:7px; opacity:0.96; word-break:break-word;}
.cv-modern-main .cv-section-title-lg{ font-weight:800; font-size:1.1rem; text-transform:uppercase; letter-spacing:0.01em; color:var(--cv-accent, #0b8043); margin:24px 0 12px; border-bottom:2px solid var(--cv-accent, #0b8043); padding-bottom:6px; }
.cv-modern-main .cv-section-title-lg:first-child{margin-top:0;}
.cv-summary-modern{font-size:0.9rem; line-height:1.65; margin-bottom:4px; color:var(--ink-soft);}
.cv-modern .cv-block{margin-bottom:14px;}
.cv-modern .cv-block-title{font-size:0.92rem;}

/* ---------- CONTENT PAGES ---------- */
.page-hero{padding:56px 0 24px; background:linear-gradient(180deg, var(--bg-soft) 0%, #fff 100%); border-bottom:1px solid var(--line-soft);}
.page-hero h1{font-size:2.3rem; margin-bottom:12px;}
.page-hero p.lead{color:var(--muted); max-width:62ch; font-size:1.02rem;}
.content-card{ background:#fff; color:var(--ink); border-radius:var(--radius); border:1px solid var(--line-soft); padding:40px 44px; margin:32px 0 70px; box-shadow:var(--shadow-sm); }
.content-card h2{font-size:1.3rem; margin:30px 0 12px; color:var(--ink);}
.content-card h2:first-child{margin-top:0;}
.content-card p{margin-bottom:14px; font-size:0.97rem; line-height:1.75; color:var(--ink-soft);}
.content-card ul{margin:0 0 16px 22px;}
.content-card li{margin-bottom:8px; font-size:0.97rem; line-height:1.65; color:var(--ink-soft);}
.content-card a{color:var(--green); font-weight:500;}
.content-card .updated{ font-family:'Roboto Mono', monospace; font-size:0.75rem; color:var(--muted); background:var(--bg-soft); display:inline-block; padding:6px 12px; border-radius:14px; margin-bottom:26px; }
.value-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin:30px 0 10px;}
.value-card{background:var(--bg-soft); border:1px solid var(--line-soft); border-radius:var(--radius-sm); padding:22px;}
.value-card .tabtop{ font-family:'Roboto Mono', monospace; font-size:0.62rem; letter-spacing:0.06em; color:var(--green); margin-bottom:8px; display:block; font-weight:700; }
.value-card h3{font-size:1rem; margin-bottom:6px;}
.value-card p{font-size:0.86rem; margin-bottom:0; color:var(--muted);}
.contact-grid{display:grid; grid-template-columns:1fr 1fr; gap:40px;}
.contact-info .tag{ font-family:'Roboto Mono', monospace; font-size:0.68rem; letter-spacing:0.06em; color:var(--green); background:var(--green-light); padding:5px 10px; border-radius:14px; display:inline-block; margin-bottom:14px; font-weight:600;}
.contact-info a.email{ font-weight:700; font-size:1.25rem; color:var(--green); text-decoration:none; display:inline-block; margin:6px 0 20px; }
.contact-info a.email:hover{text-decoration:underline;}
.contact-info p{font-size:0.92rem; color:var(--muted); margin-bottom:10px;}

/* ---------- FOOTER ---------- */
footer{padding:48px 0 40px; border-top:1px solid var(--line-soft); margin-top:20px; background:var(--bg-soft);}
footer .wrap{display:flex; justify-content:space-between; align-items:flex-start; flex-wrap:wrap; gap:24px;}
footer p{color:var(--muted); font-size:0.86rem;}
.footer-links{display:flex; gap:22px; flex-wrap:wrap;}
.footer-links a{color:var(--muted); text-decoration:none; font-size:0.86rem; font-weight:500;}
.footer-links a:hover{color:var(--green);}
.footer-bottom{max-width:1080px; margin:32px auto 0; padding:20px 24px 0; border-top:1px solid var(--line-soft);}
.footer-bottom p{font-size:0.8rem; color:var(--muted-light);}

/* ---------- PRINT ---------- */
#print-root{display:none;}
@media print{
  @page{ margin:12mm; }
  body > *:not(#print-root){ display:none !important; }
  #print-root{ display:block !important; margin:0; padding:0; }
  #print-root .cv-modern{ grid-template-columns:35% 65% !important; max-width:100%; border:none; box-shadow:none; }
  #print-root .cv-page{ box-shadow:none; border:none; max-width:100%; padding:0; }
}

/* ---------- RESPONSIVE ---------- */
@media (max-width: 860px){
  .hero-grid{grid-template-columns:1fr;}
  .hero h1{font-size:2.1rem;}
  .doc-wrap{margin-top:20px;}
  .index-grid, .index-grid-7{grid-template-columns:1fr 1fr;}
  .grid2, .grid3{grid-template-columns:1fr;}
  .nav-links{display:none;}
  .doc .pill{display:none;}
  .content-card{padding:28px 22px;}
  .value-grid{grid-template-columns:1fr;}
  .contact-grid{grid-template-columns:1fr;}
  .page-hero h1{font-size:1.8rem;}
  .cv-page{padding:28px 24px;}
  .cv-modern{grid-template-columns:1fr;}
}
@media (max-width: 560px){
  .index-grid, .index-grid-7{grid-template-columns:1fr;}
}
