:root {
  --cv-bg: #071016;
  --cv-surface: #0c171e;
  --cv-surface-2: #101f28;
  --cv-line: rgba(171, 216, 222, .13);
  --cv-text: #eef6f6;
  --cv-muted: #8ea6aa;
  --cv-cyan: #67e8df;
  --cv-blue: #72a7ff;
  --cv-lime: #d7f77f;
}

body:has(.cv-redesign) {
  background: var(--cv-bg) !important;
  color: var(--cv-text);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

main:has(.cv-redesign) { overflow: hidden; }
main:has(.cv-redesign) + .site-footer { display: none; }
.cv-redesign { max-width: 1240px; margin: 0 auto; padding: 0 28px 80px; color: var(--cv-text); }
.cv-redesign a { color: inherit; text-decoration: none; }
.cv-redesign p { color: var(--cv-muted); line-height: 1.8; }
.cv-nav { height: 88px; display: flex; align-items: center; justify-content: space-between; gap: 24px; border-bottom: 1px solid var(--cv-line); }
.cv-brand { display: inline-flex; align-items: center; gap: 11px; }
.cv-brand-mark { display: grid; place-items: center; width: 38px; height: 38px; border: 1px solid var(--cv-cyan); border-radius: 50%; color: var(--cv-cyan); font-size: 12px; font-weight: 800; letter-spacing: -.04em; }
.cv-brand strong, .cv-brand small { display: block; }
.cv-brand strong { font-size: 13px; letter-spacing: .04em; }
.cv-brand small { color: var(--cv-muted); font-size: 9px; letter-spacing: .16em; text-transform: uppercase; margin-top: 2px; }
.cv-nav-links { display: flex; gap: 28px; margin-left: auto; }
.cv-nav-links a { color: var(--cv-muted); font-size: 12px; transition: color .2s ease; }
.cv-nav-links a:hover { color: var(--cv-cyan); }
.cv-nav-cta { border: 1px solid var(--cv-line); border-radius: 999px; padding: 10px 15px; color: var(--cv-text) !important; font-size: 11px; }
.cv-nav-cta i, .cv-button i { margin-left: 7px; color: var(--cv-cyan); }
.cv-nav-tools { display: flex; align-items: center; gap: 12px; }
.cv-lang-link { color: var(--cv-cyan) !important; font-size: 10px; font-weight: 800; letter-spacing: .12em; }
.cv-hero-modern { position: relative; padding: 96px 0 0; }
.cv-hero-grid { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr); align-items: center; gap: 70px; min-height: 590px; }
.cv-eyebrow, .cv-kicker { color: var(--cv-cyan); font-size: 10px; letter-spacing: .2em; text-transform: uppercase; }
.cv-eyebrow { display: flex; align-items: center; gap: 9px; color: var(--cv-muted); }
.cv-eyebrow b { color: var(--cv-cyan); font-weight: 400; }
.cv-pulse { width: 7px; height: 7px; background: var(--cv-lime); border-radius: 50%; box-shadow: 0 0 0 5px rgba(215, 247, 127, .09); }
.cv-hero-content h1 { margin: 22px 0 10px; color: var(--cv-text); font-size: clamp(54px, 8vw, 104px); font-weight: 750; letter-spacing: -.08em; line-height: .92; }
.cv-hero-content h1 span { color: var(--cv-cyan); }
.cv-hero-title { margin: 0; color: var(--cv-blue) !important; font-size: 18px; font-weight: 650; letter-spacing: .01em; }
.cv-hero-lead { max-width: 560px; margin: 26px 0 30px; font-size: 16px; }
.cv-actions { display: flex; flex-wrap: wrap; gap: 11px; }
.cv-button { display: inline-flex; align-items: center; justify-content: center; border-radius: 8px; padding: 13px 17px; font-size: 12px; font-weight: 700; transition: transform .2s ease, background .2s ease, border-color .2s ease; }
.cv-button:hover { transform: translateY(-2px); }
.cv-button-primary { background: var(--cv-cyan); color: #061114 !important; }
.cv-button-primary i { color: #061114; }
.cv-button-ghost { border: 1px solid var(--cv-line); color: var(--cv-text) !important; }
.cv-button-ghost:hover { border-color: var(--cv-cyan); }
.cv-social-row { display: flex; flex-wrap: wrap; gap: 17px; margin-top: 34px; }
.cv-social-row a { color: var(--cv-muted); font-size: 11px; }
.cv-social-row a:hover { color: var(--cv-cyan); }
.cv-social-row i { margin-right: 5px; color: var(--cv-cyan); }
.cv-hero-visual { position: relative; min-height: 500px; display: grid; place-items: center; }
.cv-grid-glow { position: absolute; inset: 5% -20% 0 0; background-image: linear-gradient(var(--cv-line) 1px, transparent 1px), linear-gradient(90deg, var(--cv-line) 1px, transparent 1px); background-size: 44px 44px; mask-image: linear-gradient(135deg, black, transparent 75%); opacity: .5; }
.cv-grid-glow:after { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 50% 45%, rgba(103, 232, 223, .18), transparent 46%); }
.cv-profile-card { position: relative; z-index: 1; width: min(100%, 380px); padding: 16px; border: 1px solid rgba(103, 232, 223, .28); border-radius: 18px; background: linear-gradient(145deg, rgba(17, 35, 43, .98), rgba(8, 18, 24, .98)); box-shadow: 0 30px 80px rgba(0, 0, 0, .4), 0 0 50px rgba(103, 232, 223, .08); transform: rotate(2deg); }
.cv-card-top { display: flex; align-items: center; gap: 8px; color: var(--cv-muted); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; }
.cv-card-top i { margin-left: auto; }
.cv-card-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--cv-lime); }
.cv-portrait-frame { height: 278px; overflow: hidden; margin: 16px 0; border-radius: 11px; background: #142b34; }
.cv-portrait-frame img { width: 100%; height: 100%; display: block; object-fit: cover; object-position: center 23%; filter: saturate(.82) contrast(1.06); }
.cv-card-identity { display: flex; align-items: start; justify-content: space-between; gap: 10px; }
.cv-card-identity strong, .cv-card-identity span { display: block; }
.cv-card-identity strong { font-size: 18px; letter-spacing: -.04em; }
.cv-card-identity > div > span { color: var(--cv-muted); font-size: 11px; margin-top: 3px; }
.cv-status { color: var(--cv-lime) !important; font-size: 10px !important; }
.cv-status i { display: inline-block; width: 6px; height: 6px; margin-right: 4px; border-radius: 50%; background: var(--cv-lime); }
.cv-profile-card p { margin: 17px 0; font-size: 12px; line-height: 1.65; }
.cv-card-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.cv-card-tags span, .cv-skill-card span { border: 1px solid var(--cv-line); border-radius: 5px; padding: 6px 8px; color: var(--cv-muted); font-size: 10px; }
.cv-orbit { position: absolute; border: 1px solid rgba(114, 167, 255, .35); border-radius: 50%; }
.orbit-one { width: 420px; height: 420px; }
.orbit-two { width: 530px; height: 530px; border-color: rgba(103, 232, 223, .12); }
.cv-hero-bottom { display: grid; grid-template-columns: 140px 1fr; gap: 28px; align-items: center; padding: 22px 0; border-top: 1px solid var(--cv-line); border-bottom: 1px solid var(--cv-line); color: var(--cv-muted); font-size: 10px; text-transform: uppercase; letter-spacing: .12em; }
.cv-hero-bottom div { display: flex; flex-wrap: wrap; gap: 10px; }
.cv-hero-bottom b { padding-right: 10px; color: var(--cv-text); font-size: 11px; font-weight: 500; letter-spacing: 0; text-transform: none; border-right: 1px solid var(--cv-line); }
.cv-hero-bottom b:last-child { border: 0; }
.cv-section-modern { padding: 125px 0 0; }
.cv-section-heading { display: grid; grid-template-columns: 62px 1fr; gap: 20px; align-items: start; margin-bottom: 48px; }
.cv-section-number { color: var(--cv-blue); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12px; padding-top: 7px; }
.cv-section-heading h2 { margin: 8px 0 0; color: var(--cv-text); font-size: clamp(31px, 4vw, 52px); font-weight: 700; letter-spacing: -.065em; line-height: 1; }
.cv-about-grid { display: grid; grid-template-columns: .78fr 1.22fr; gap: 80px; }
.cv-section-intro { border-top: 1px solid var(--cv-cyan); padding-top: 20px; }
.cv-big-quote { display: block; height: 45px; color: var(--cv-cyan); font-size: 70px; line-height: .9; }
.cv-section-intro p { max-width: 300px; color: var(--cv-text); font-size: 24px; letter-spacing: -.04em; line-height: 1.35; }
.cv-copy > p { margin-top: 0; font-size: 14px; }
.cv-focus-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; margin-top: 28px; }
.cv-focus-grid div { display: flex; align-items: center; gap: 10px; padding: 14px; border: 1px solid var(--cv-line); border-radius: 7px; color: var(--cv-text); font-size: 11px; }
.cv-focus-grid i { color: var(--cv-cyan); }
.cv-skills-section { padding-bottom: 20px; }
.cv-skill-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.cv-skill-card { min-height: 220px; padding: 20px; border: 1px solid var(--cv-line); border-radius: 10px; background: linear-gradient(145deg, rgba(16, 31, 40, .75), rgba(8, 16, 22, .5)); transition: border-color .2s ease, transform .2s ease; }
.cv-skill-card:hover { border-color: rgba(103, 232, 223, .5); transform: translateY(-4px); }
.cv-skill-index { display: block; border: 0 !important; padding: 0 !important; color: var(--cv-cyan) !important; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
.cv-skill-card h3 { margin: 35px 0 20px; color: var(--cv-text); font-size: 17px; letter-spacing: -.04em; }
.cv-skill-card > div { display: flex; flex-wrap: wrap; gap: 6px; }
.cv-proof-strip { display: grid; grid-template-columns: repeat(4, 1fr); gap: 9px; margin-top: 35px; }
.cv-proof-strip > div { display: grid; grid-template-columns: 28px 1fr; column-gap: 8px; padding: 15px; border: 1px solid var(--cv-line); border-radius: 8px; }
.cv-proof-strip i { grid-row: span 2; color: var(--cv-cyan); font-size: 18px; }
.cv-proof-strip span { color: var(--cv-muted); font-size: 9px; letter-spacing: .12em; text-transform: uppercase; }
.cv-proof-strip strong { color: var(--cv-text); font-size: 11px; font-weight: 600; }
.cv-timeline { position: relative; max-width: 920px; margin-left: 62px; border-left: 1px solid var(--cv-line); }
.cv-timeline-item { position: relative; padding: 0 0 55px 45px; }
.cv-timeline-item:last-child { padding-bottom: 0; }
.cv-timeline-marker { position: absolute; left: -5px; top: 4px; width: 9px; height: 9px; border: 2px solid var(--cv-bg); border-radius: 50%; background: var(--cv-cyan); box-shadow: 0 0 0 4px rgba(103, 232, 223, .15); }
.cv-timeline-date { color: var(--cv-cyan); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 11px; }
.cv-timeline-item h3 { margin: 12px 0 3px; color: var(--cv-text); font-size: 26px; letter-spacing: -.05em; }
.cv-role { margin: 0 !important; color: var(--cv-blue) !important; font-size: 13px; }
.cv-timeline-item ul { max-width: 700px; margin: 20px 0 0; padding-left: 18px; }
.cv-timeline-item li { margin: 8px 0; color: var(--cv-muted); font-size: 13px; line-height: 1.65; }
.cv-project-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.cv-project-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin: -18px 0 22px; color: var(--cv-muted); font-size: 11px; }
.cv-project-toolbar > div { display: flex; flex-wrap: wrap; gap: 7px; }
.cv-filter { border: 1px solid var(--cv-line); border-radius: 999px; padding: 7px 11px; background: transparent; color: var(--cv-muted); font-size: 10px; cursor: pointer; }
.cv-filter:hover, .cv-filter.active { border-color: var(--cv-cyan); color: var(--cv-cyan); }
.cv-project-card.is-hidden { display: none; }
.cv-project-card { position: relative; min-height: 245px; padding: 23px; border: 1px solid var(--cv-line); border-radius: 10px; background: var(--cv-surface); }
.cv-project-card:hover { border-color: rgba(103, 232, 223, .5); }
.cv-project-number { color: var(--cv-cyan); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 11px; }
.cv-project-card h3 { margin: 55px 0 12px; color: var(--cv-text); font-size: 21px; letter-spacing: -.05em; }
.cv-project-card p { margin: 0; font-size: 12px; line-height: 1.65; }
.cv-project-link { position: absolute; bottom: 22px; color: var(--cv-cyan); font-size: 11px; }
.cv-project-link i { margin-left: 5px; }
.cv-project-card-dark { background: #0a1419; }
.cv-terminal-head { display: flex; gap: 5px; }
.cv-terminal-head span { width: 7px; height: 7px; border-radius: 50%; background: var(--cv-muted); opacity: .5; }
.cv-project-card code { display: block; margin-top: 38px; color: var(--cv-muted); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12px; line-height: 1.6; }
.cv-project-card code b { color: var(--cv-cyan); }
.cv-project-card code em { color: var(--cv-lime); font-style: normal; }
.cv-reference-grid { display: grid; grid-template-columns: 1.3fr .7fr; gap: 12px; }
.cv-reference-card { overflow: hidden; border: 1px solid var(--cv-line); border-radius: 10px; background: var(--cv-surface); }
.cv-reference-card:hover { border-color: rgba(103, 232, 223, .5); }
.cv-reference-wide { grid-row: span 2; display: grid; grid-template-rows: 330px auto; align-self: start; }
.cv-reference-card > img { width: 100%; height: 220px; display: block; object-fit: cover; object-position: top; opacity: .82; transition: transform .3s ease, opacity .3s ease; }
.cv-reference-wide > img { height: 100%; }
.cv-reference-card:hover > img { transform: scale(1.03); opacity: 1; }
.cv-reference-card > div { padding: 18px; }
.cv-reference-card span { color: var(--cv-cyan); font-size: 10px; letter-spacing: .12em; text-transform: uppercase; }
.cv-reference-card h3 { margin: 8px 0; color: var(--cv-text); font-size: 20px; letter-spacing: -.04em; }
.cv-reference-card p { margin: 5px 0 17px; font-size: 12px; }
.cv-reference-card b { color: var(--cv-text); font-size: 11px; font-weight: 500; }
.cv-reference-card b i { margin-left: 5px; color: var(--cv-cyan); }
.cv-education-list { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.cv-education-list article { padding: 23px; border: 1px solid var(--cv-line); border-radius: 9px; }
.cv-education-list span { color: var(--cv-cyan); font-size: 11px; }
.cv-education-list h3 { margin: 13px 0 8px; color: var(--cv-text); font-size: 18px; letter-spacing: -.04em; }
.cv-education-list p { margin: 0; font-size: 12px; }
.cv-contact-modern { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-top: 130px; padding: 50px 0 0; border-top: 1px solid var(--cv-cyan); }
.cv-contact-modern h2 { margin: 10px 0 12px; color: var(--cv-text); font-size: clamp(34px, 5vw, 64px); letter-spacing: -.07em; }
.cv-contact-modern p { margin: 0; font-size: 13px; }
.cv-button-light { background: var(--cv-text); color: var(--cv-bg) !important; white-space: nowrap; }
.cv-button-light i { color: var(--cv-bg); }
.cv-contact-page { max-width: 900px; min-height: 70vh; }
.cv-contact-panel { max-width: 790px; margin: 110px auto 0; padding: 44px; border: 1px solid var(--cv-line); border-radius: 14px; background: linear-gradient(135deg, rgba(14, 31, 38, .92), rgba(8, 17, 22, .98)); box-shadow: 0 22px 80px rgba(0, 0, 0, .24); }
.cv-contact-panel h1 { margin: 12px 0 14px; color: var(--cv-text); font-size: clamp(38px, 7vw, 74px); line-height: .98; letter-spacing: -.07em; }
.cv-contact-panel > p { max-width: 560px; margin: 0 0 30px; color: var(--cv-muted); font-size: 14px; line-height: 1.7; }
.cv-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.cv-form-field { display: block; margin: 0 0 14px; }
.cv-form-field span { display: block; margin-bottom: 7px; color: var(--cv-muted); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.cv-form-field input, .cv-form-field textarea { width: 100%; border: 1px solid var(--cv-line); border-radius: 8px; padding: 13px 14px; outline: none; background: rgba(5, 13, 17, .72); color: var(--cv-text); font: inherit; font-size: 13px; transition: border-color .2s ease, box-shadow .2s ease; }
.cv-form-field textarea { min-height: 170px; resize: vertical; }
.cv-form-field input:focus, .cv-form-field textarea:focus { border-color: var(--cv-cyan); box-shadow: 0 0 0 3px rgba(103, 232, 223, .1); }
.cv-form-bottom { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-top: 18px; }
.cv-form-bottom small { color: var(--cv-muted); font-size: 11px; }
.cv-form-alert { margin: 0 0 22px; padding: 13px 15px; border-radius: 8px; font-size: 12px; line-height: 1.6; }
.cv-form-success { border: 1px solid rgba(152, 245, 174, .35); background: rgba(45, 117, 66, .16); color: #b8f7c2; }
.cv-form-error { border: 1px solid rgba(255, 116, 116, .35); background: rgba(137, 38, 48, .16); color: #ffb0b0; }
.cv-honeypot { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
@media (max-width: 900px) {
  .cv-hero-grid { grid-template-columns: 1fr; gap: 30px; }
  .cv-hero-visual { min-height: 460px; }
  .cv-skill-grid { grid-template-columns: 1fr 1fr; }
  .cv-proof-strip { grid-template-columns: 1fr 1fr; }
  .cv-about-grid { gap: 35px; }
  .cv-contact-panel { margin-top: 80px; }
}
@media (max-width: 640px) {
  .cv-redesign { padding: 0 18px 45px; }
  .cv-nav { height: 75px; }
  .cv-nav-links { display: none; }
  .cv-nav-cta { padding: 8px 10px; font-size: 10px; }
  .cv-hero-modern { padding-top: 62px; }
  .cv-hero-grid { min-height: auto; }
  .cv-hero-content h1 { font-size: 63px; }
  .cv-hero-lead { font-size: 14px; }
  .cv-hero-visual { min-height: 405px; }
  .cv-profile-card { width: min(100%, 340px); }
  .cv-portrait-frame { height: 230px; }
  .orbit-one { width: 310px; height: 310px; }
  .orbit-two { width: 390px; height: 390px; }
  .cv-hero-bottom { grid-template-columns: 1fr; gap: 12px; }
  .cv-hero-bottom div { gap: 7px; }
  .cv-hero-bottom b { font-size: 10px; }
  .cv-section-modern { padding-top: 82px; }
  .cv-section-heading { grid-template-columns: 42px 1fr; gap: 10px; margin-bottom: 30px; }
  .cv-section-heading h2 { font-size: 37px; }
  .cv-about-grid, .cv-focus-grid, .cv-education-list { grid-template-columns: 1fr; }
  .cv-section-intro p { font-size: 21px; }
  .cv-skill-grid, .cv-project-grid, .cv-reference-grid { grid-template-columns: 1fr; }
  .cv-project-toolbar { align-items: start; flex-direction: column; margin-top: -10px; }
  .cv-proof-strip { grid-template-columns: 1fr; }
  .cv-reference-wide { grid-row: auto; grid-template-rows: auto auto; }
  .cv-reference-wide > img, .cv-reference-card > img { height: 210px; }
  .cv-timeline { margin-left: 13px; }
  .cv-timeline-item { padding-left: 30px; }
  .cv-timeline-item h3 { font-size: 22px; }
  .cv-contact-modern { align-items: start; flex-direction: column; margin-top: 85px; }
  .cv-contact-panel { margin-top: 55px; padding: 27px 20px; }
  .cv-form-grid { grid-template-columns: 1fr; gap: 0; }
  .cv-form-bottom { align-items: start; flex-direction: column; }
}

/* Portfolio refinement: calmer technical identity, clearer services and contact flow. */
:root {
  --cv-bg: #111516;
  --cv-surface: #171d1e;
  --cv-surface-2: #1d2525;
  --cv-line: rgba(225, 217, 198, .16);
  --cv-text: #f3efe6;
  --cv-muted: #aab0aa;
  --cv-cyan: #d1ad69;
  --cv-blue: #c5d2cc;
  --cv-lime: #b8d68b;
}

body:has(.cv-redesign) { background: var(--cv-bg) !important; }
.cv-redesign { max-width: 1280px; padding-bottom: 72px; }
.cv-nav { height: 78px; border-bottom-color: var(--cv-line); }
.cv-brand-mark { border-radius: 8px; border-color: var(--cv-cyan); color: var(--cv-cyan); }
.cv-brand small { letter-spacing: .12em; }
.cv-nav-links { gap: 24px; }
.cv-nav-links a:hover, .cv-lang-link, .cv-social-row a:hover { color: var(--cv-cyan) !important; }
.cv-nav-cta { border-radius: 6px; }
.cv-hero-modern { padding-top: 78px; }
.cv-hero-grid { grid-template-columns: minmax(0, 1.08fr) minmax(340px, .92fr); gap: 84px; min-height: 520px; }
.cv-eyebrow { color: var(--cv-muted); }
.cv-pulse { background: var(--cv-cyan); box-shadow: none; }
.cv-hero-content h1 { font-size: clamp(52px, 7vw, 92px); letter-spacing: -.07em; }
.cv-hero-content h1 span { color: var(--cv-cyan); }
.cv-hero-title { color: var(--cv-cyan) !important; }
.cv-hero-lead { max-width: 610px; font-size: 17px; line-height: 1.7; }
.cv-button { border-radius: 6px; }
.cv-button-primary { background: var(--cv-cyan); }
.cv-button-ghost:hover { border-color: var(--cv-cyan); }
.cv-grid-glow, .cv-orbit { display: none; }
.cv-hero-visual { min-height: 390px; }
.cv-service-panel { width: min(100%, 430px); border: 1px solid var(--cv-line); border-radius: 8px; background: var(--cv-surface); box-shadow: 0 24px 55px rgba(0, 0, 0, .24); }
.cv-service-panel-head { display: flex; justify-content: space-between; gap: 12px; padding: 17px 20px; border-bottom: 1px solid var(--cv-line); color: var(--cv-cyan); font: 10px/1.2 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .11em; text-transform: uppercase; }
.cv-service-location { color: var(--cv-muted); letter-spacing: .04em; text-transform: none; }
.cv-service-panel-main { display: flex; align-items: center; gap: 14px; padding: 25px 20px 12px; }
.cv-service-avatar { width: 54px; height: 54px; overflow: hidden; flex: 0 0 auto; border: 1px solid rgba(209, 173, 105, .55); border-radius: 6px; background: var(--cv-surface-2); }
.cv-service-avatar img { width: 100%; height: 100%; display: block; object-fit: cover; object-position: center 23%; }
.cv-service-panel-main strong, .cv-service-panel-main span { display: block; }
.cv-service-panel-main strong { color: var(--cv-text); font-size: 19px; letter-spacing: -.04em; }
.cv-service-panel-main span { margin-top: 4px; color: var(--cv-muted); font-size: 11px; }
.cv-service-panel-text { margin: 9px 20px 19px; font-size: 12px; line-height: 1.7; }
.cv-service-list { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 12px; margin: 0 20px; padding: 17px 0; border-top: 1px solid var(--cv-line); border-bottom: 1px solid var(--cv-line); list-style: none; }
.cv-service-list li { color: var(--cv-text); font-size: 11px; line-height: 1.4; }
.cv-service-list i { margin-right: 7px; color: var(--cv-cyan); }
.cv-service-panel-foot { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 20px 18px; color: var(--cv-muted); font-size: 10px; }
.cv-service-panel-foot i { color: var(--cv-cyan); }
.cv-service-panel-foot a { color: var(--cv-text); }
.cv-service-panel-foot a:hover { color: var(--cv-cyan); }
.cv-hero-bottom { padding: 18px 0; }
.cv-section-modern { padding-top: 112px; }
.cv-section-heading { margin-bottom: 40px; }
.cv-section-heading h2 { letter-spacing: -.055em; }
.cv-section-intro { border-top-color: var(--cv-cyan); }
.cv-focus-grid div, .cv-skill-card, .cv-proof-strip > div, .cv-project-card, .cv-reference-card, .cv-education-list article { border-radius: 6px; background: var(--cv-surface); }
.cv-focus-grid div { background: transparent; }
.cv-skill-card { min-height: 205px; background: var(--cv-surface); }
.cv-skill-card:hover { transform: none; border-color: rgba(209, 173, 105, .55); }
.cv-skill-card span { border-radius: 4px; }
.cv-project-card { min-height: 225px; }
.cv-project-card:hover, .cv-reference-card:hover { border-color: rgba(209, 173, 105, .55); }
.cv-filter { border-radius: 5px; }
.cv-filter:hover, .cv-filter.active { border-color: var(--cv-cyan); color: var(--cv-cyan); }
.cv-reference-card { background: var(--cv-surface); }
.cv-contact-modern { border-top-color: var(--cv-cyan); }
.cv-button-light { color: var(--cv-bg) !important; }

@media (max-width: 640px) {
  .cv-hero-modern { padding-top: 54px; }
  .cv-hero-grid { gap: 18px; }
  .cv-hero-visual { min-height: 360px; }
  .cv-service-panel { width: 100%; }
  .cv-service-list { grid-template-columns: 1fr; }
  .cv-service-panel-foot { align-items: flex-start; flex-direction: column; }
}
