/* SEOLIVES Menorca's visual system, adapted to the existing personal portfolio. */
@font-face{font-family:'SEOLIVES Montserrat';src:url('seolives-montserrat.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
:root{--head:'SEOLIVES Montserrat',Montserrat,Arial,sans-serif;--body:'SEOLIVES Montserrat',Montserrat,Arial,sans-serif;--panel-gap:clamp(24px,3vw,48px);--panel-pad:clamp(24px,4vw,64px);--sticky-offset:116px}
html{scroll-padding-top:var(--sticky-offset)}
body{background:var(--white);font-size:15px;line-height:1.75}
main{display:flow-root}
h1,h2,h3{font-weight:650;letter-spacing:-.045em;line-height:1.1}
h2{font-size:clamp(34px,4.5vw,66px)}
h3{font-weight:650}
.section{padding-block:clamp(64px,7.5vw,110px)}
.eyebrow{font-size:10px;font-weight:650;letter-spacing:.11em;line-height:1.6}
.section-head{margin-bottom:48px}
.section-head p{font-size:13px}
.title-mask{padding-bottom:.16em;margin-bottom:-.16em}
::selection{background:var(--sage);color:var(--ink)}

/* The floating header remains sticky and retains the full mobile menu. */
header{top:20px;width:calc(100% - 2 * var(--gap));max-width:calc(1480px - 2 * var(--gap));margin:20px auto 0;border:1px solid #68734740;border-radius:80px;background:#b3ba9df2;color:var(--ink);box-shadow:0 8px 35px #2e322118}
.nav.wrap{height:84px;padding-inline:30px;gap:24px}
.wordmark{font-size:18px;font-weight:650;letter-spacing:.09em;text-transform:uppercase}
.nav-links{font-size:13px;font-weight:600;gap:28px}
.nav-links a.active{border-bottom-color:var(--ink)}
.nav .talk{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border:1px solid var(--ink);border-radius:60px;background:var(--ink);color:var(--white);font-size:12px;font-weight:600;white-space:nowrap}
.nav .talk:hover{background:var(--olive);border-color:var(--olive)}
.menu{color:var(--white);background:var(--ink);border-color:var(--ink)}

/* White gutters and separated rounded colour bands. */
main>section:is(.about,.expertise,.experience,.learning,.press){width:calc(100% - 2 * var(--gap));max-width:calc(1480px - 2 * var(--gap));margin:var(--panel-gap) auto;border-radius:50px}
main>section:is(.about,.expertise,.experience,.press)>.wrap{padding-inline:var(--panel-pad)}
.learning.section.wrap{padding-inline:var(--panel-pad)}
.about{background:var(--earth);color:var(--ink)}
.about-side p,.about-text{color:var(--brown)}
.about-body h2{font-size:clamp(34px,4.5vw,66px)}
.about-body .link{color:var(--white)}
.route svg{stroke:var(--olive)}
.route .point{fill:var(--ink)}
.route-labels{color:var(--brown)}
.expertise{background:var(--sage)}
.experience{background:var(--earth)}
.learning{background:var(--ink);color:var(--white)}
.journal{background:var(--white)}
.press{background:#E6E6E6}
.editorial-band{width:calc(100% - 2 * var(--gap));max-width:calc(1480px - 2 * var(--gap));margin:var(--panel-gap) auto;border:0;border-radius:50px;background:var(--earth)}
.editorial-inner{padding-inline:var(--panel-pad)}
.marquee-group{font-weight:600;font-size:clamp(19px,2vw,28px)}
.marquee-toggle{font-size:10px;background:var(--ink);border-color:var(--ink);color:var(--white)}
.marquee-toggle:hover{background:var(--olive);border-color:var(--olive)}

/* Retain the editorial name composition, using the reference's dark hero and organic portrait. */
.hero.wrap{width:calc(100% - 2 * var(--gap));max-width:calc(1480px - 2 * var(--gap));margin:var(--panel-gap) auto;padding:var(--panel-pad);border-radius:50px;background:var(--ink);color:var(--white)}
.hero-top .eyebrow,.hero-top .caption{color:var(--sage)}
.hero h1{font-size:clamp(90px,13.8vw,205px);line-height:.9;letter-spacing:-.075em;font-weight:750;margin-top:45px}
.hero h1 .surname{color:var(--earth);margin-right:0}
.hero-main{margin-top:-20px;gap:6%}
.hero-copy{padding:65px 0 40px}
.hero-copy h2{font-size:clamp(28px,3vw,42px);font-weight:650;line-height:1.12}
.hero-copy p{font-size:14px;color:var(--earth)}
.hero-photo{height:530px;border-radius:45px 180px 45px 180px}
.hero-photo img{filter:saturate(.9)}
.hero-photo figcaption{color:var(--ink);background:var(--earth);font-size:10px}
.hero-bottom{border-bottom-color:#b3ba9d60;padding-bottom:30px}
.evidence{padding:36px 0 0;gap:30px}
.evidence article{border-right-color:#b3ba9d60}
.evidence strong{font-size:clamp(40px,4.7vw,64px);font-weight:600;letter-spacing:-.06em}
.evidence p{color:var(--sage);font-size:12px}

/* Common capsule actions; existing destinations and button-only CTAs stay intact. */
.pill,.link{min-height:48px;border-radius:60px;padding:13px 22px;gap:24px;font-size:12px;font-weight:600;line-height:1.5}
.pill.primary,.link{background:var(--ink);color:var(--white);border:1px solid var(--ink)}
.pill.primary:hover,.link:hover{background:var(--olive);border-color:var(--olive);color:var(--white)}
.link{display:inline-flex;align-items:center;justify-content:space-between;max-width:100%;transition:background .2s,color .2s,transform .2s}
.link:hover{transform:translateY(-2px)}
.pill>span[aria-hidden],.link>span[aria-hidden]{flex:none}
.hero-actions .pill.primary,.hero-actions .link{background:var(--white);border-color:var(--white);color:var(--ink)}
.hero-actions .link{background:transparent;color:var(--white);border-color:var(--sage)}
.hero-actions .pill.primary:hover,.hero-actions .link:hover{background:var(--earth);border-color:var(--earth);color:var(--ink)}
.section-cta-button{margin-top:48px}

.project-grid{gap:65px 36px}
.project-image{border-radius:45px}
.project-card:nth-child(2n) .project-image{border-radius:45px 100px 45px 45px}
.project-body h3{font-size:clamp(28px,2.7vw,38px);font-weight:650;line-height:1.12;min-height:2.24em}
.project-body p{font-size:13px}
.project-meta{color:var(--olive);font-weight:600;font-size:10px}
.project-image .go{background:var(--ink);color:var(--white)}
.skill h3{font-size:clamp(24px,2.6vw,34px);font-weight:600;transition:color .2s}
.skill summary:hover h3,.skill summary:focus-visible h3{color:var(--brown)}
.skill p{font-size:13px}
.method-steps{gap:35px 45px}
.method-steps h4{font-family:var(--head);font-weight:650;font-size:24px;letter-spacing:-.035em}
.method-steps p{font-size:13px}
.timeline-side{top:var(--sticky-offset)}
.timeline-side h2{font-size:clamp(26px,3vw,38px);font-weight:650;line-height:1.12}
.career summary h3{font-size:25px;font-weight:600}
.career .role{font-size:12px}
.education strong{font-weight:600;font-size:14px;line-height:1.5}
.education small,.education-description,.learning .cert-entry p{color:var(--sage)}
.education-type{color:var(--earth)}
.academic-archive>h3,.certificates h3{font-size:24px}
.journal-body h3{font-size:25px;line-height:1.15;font-weight:650}
.journal-card.is-featured h3{font-size:clamp(30px,3.5vw,48px)}
.journal-body p{font-size:13px}
.journal-cover{border-radius:40px}
.press-cover{border-radius:45px 100px 45px 45px}
.press-grid{gap:40px}
.press-grid article{border-top:0;padding-top:0}
.press-grid h3{font-size:clamp(28px,3vw,42px);font-weight:650;line-height:1.15}
.press-grid p{font-size:13px}
.context-cursor{background:var(--ink);color:var(--white);font-size:11px;font-weight:600}

/* The original conversation block and centered legal links retain their roles. */
.conversation{padding:var(--panel-gap) 0}
.conversation .manifesto{background:var(--olive);color:var(--white);padding:var(--panel-pad);border-radius:50px}
.conversation .manifesto h2{font-size:clamp(36px,4.8vw,68px);font-weight:650;line-height:1.1;max-width:1100px}
.conversation .pill.primary{background:var(--white);border-color:var(--white);color:var(--ink)}
.conversation .pill.primary:hover{background:var(--earth);border-color:var(--earth)}
#enlaces.contact{width:calc(100% - 2 * var(--gap));max-width:calc(1480px - 2 * var(--gap));margin:var(--panel-gap) auto 0;padding:var(--panel-pad);border-radius:50px 50px 0 0;background:var(--ink);color:var(--white)}
#enlaces>.wrap,.footer>.wrap{padding-inline:0}
.professional-links{gap:40px}
.professional-links h2{font-size:25px;font-weight:600;margin-bottom:25px}
.professional-links a{font-size:12px;color:var(--sage);line-height:1.6}
.professional-links a:hover{color:var(--white)}
.footer{width:calc(100% - 2 * var(--gap));max-width:calc(1480px - 2 * var(--gap));margin:0 auto var(--panel-gap);border-radius:0 0 50px 50px;padding:30px var(--panel-pad);color:var(--sage);font-size:10px}
.footer-top{align-items:center;gap:20px}
.footer-legal{justify-content:center;gap:12px 24px;line-height:1.7}

@media(max-width:1100px){
  .hero h1{font-size:14.5vw}
  .hero-main{margin-top:0;gap:5%}
  .hero-copy{padding-top:40px}
  .hero-photo{height:440px;border-radius:40px 140px 40px 140px}
  .evidence article{padding-right:20px}
  .professional-links{gap:30px}
}
@media(max-width:1000px){
  .nav.wrap{padding-inline:24px}
  .nav .talk{display:none}
  .menu{display:block;position:relative;z-index:93;margin-left:auto}
  .nav-links{display:none;position:fixed;inset:116px var(--gap) 20px;background:var(--ink);color:var(--earth);padding:28px var(--panel-pad);border:0;border-radius:30px;overflow-y:auto;flex-direction:column;justify-content:center;gap:0;z-index:91;box-shadow:0 15px 35px #2e322125}
  .nav-links.open{display:flex}
  .nav-links a{font-family:var(--head);font-size:clamp(28px,5vw,44px);font-weight:600;letter-spacing:-.045em;line-height:1.2;padding:22px 0;border-bottom:1px solid #dfd3c040;min-height:44px}
  .nav-links a.active{color:var(--gold);border-bottom-color:#dfd3c040}
  .nav-links.open a{animation:menuLinkEnter .35s var(--ease) both;animation-delay:calc(var(--menu-index) * 55ms)}
  .nav-open{overflow:hidden}
}
@media(max-width:760px){
  :root{--sticky-offset:96px}
  header{top:12px;margin-top:12px}
  .nav.wrap{height:72px;padding-inline:18px}
  .wordmark{font-size:15px;letter-spacing:.08em}
  .nav-links{inset:96px var(--gap) 12px;padding:24px;border-radius:30px}
  .nav-links a{font-size:clamp(27px,7vw,40px);padding:20px 0}
  main>section:is(.about,.expertise,.experience,.learning,.press),.hero.wrap,.editorial-band{border-radius:35px}
  .hero h1{font-size:21vw;line-height:.92;margin-top:32px}
  .hero-main{grid-template-columns:1fr;margin-top:30px;gap:28px}
  .hero-copy{padding:0}
  .hero-copy h2{font-size:28px}
  .hero-photo{height:360px;border-radius:35px 110px 35px 110px}
  .hero-photo figcaption{left:18px;bottom:18px;padding:8px 13px;font-size:9px}
  .hero-top .eyebrow{font-size:9px;letter-spacing:.07em}
  .hero-actions{gap:14px}
  .hero-bottom{margin-top:28px;padding-top:0}
  .evidence{padding-top:30px;gap:20px}
  .evidence article{grid-template-columns:120px minmax(0,1fr);gap:14px;border-bottom-color:#b3ba9d60;padding-right:0}
  .evidence strong{font-size:38px}
  .evidence article:last-child strong{font-size:clamp(18px,5vw,24px)}
  .evidence p{font-size:11px;line-height:1.6}
  .about-body h2,.section-head h2{font-size:clamp(30px,7.5vw,42px)}
  .about-grid{gap:28px}
  .about-text{font-size:13px;gap:20px}
  .section-head{margin-bottom:35px}
  .project-grid{gap:48px}
  .project-body h3{font-size:29px;min-height:0}
  .project-image,.journal-cover{border-radius:32px}
  .project-card:nth-child(2n) .project-image,.press-cover{border-radius:32px 80px 32px 32px}
  .pill,.link{font-size:11px;min-height:46px;gap:18px;padding:12px 18px}
  .timeline-side h2{font-size:25px}
  .timeline-side .eyebrow{font-size:9px;letter-spacing:.06em}
  .career summary h3{font-size:22px}
  .skill h3{font-size:24px}
  .method-steps h4{font-size:23px;min-height:0}
  .journal-card.is-featured h3{font-size:30px}
  .journal-body h3{font-size:24px}
  .press-grid h3{font-size:28px;min-height:0}
  .conversation .manifesto{border-radius:35px}
  .conversation .manifesto h2{font-size:clamp(28px,7.5vw,40px)}
  #enlaces.contact{border-radius:35px 35px 0 0}
  .professional-links{grid-template-columns:1fr;gap:35px}
  .professional-links h2{font-size:23px;margin-bottom:16px}
  .footer{border-radius:0 0 35px 35px}
  .footer-top{flex-direction:column;align-items:flex-start;gap:14px}
  .footer-legal{margin-top:24px;gap:8px 20px}
}
@media(max-height:560px){
  .timeline-side h2{font-size:20px}
  .nav-links{justify-content:flex-start;padding-block:16px}
  .nav-links a{font-size:25px;padding:12px 0}
}
@media(prefers-reduced-motion:reduce){
  .nav-links.open a{animation:none}
  .link,.nav .talk,.skill h3{transition:none}
  .link:hover{transform:none}
}
