/*
Theme Name: NAGN Abogado
Theme URI: https://gruponagn.com/
Description: Tema hijo de Abogado adaptado para Grupo NAGN, consultoría jurídica especializada en aguas nacionales.
Author: Grupo NAGN
Version: 1.0.0
Tested up to: 6.7.1
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: nagn-abogado
Template: abogado
*/

:root { --nagn-black:#050505; --nagn-panel:#11100d; --nagn-panel-soft:#181610; --nagn-gold:#c9a348; --nagn-gold-light:#e7c76d; --nagn-ivory:#f3eee3; --nagn-muted:#b9b0a0; --nagn-line:rgba(201,163,72,.25); }
html { scroll-behavior:smooth; }
body.nagn-theme { margin:0; background:var(--nagn-black); color:var(--nagn-ivory); font-family:Inter,Manrope,Arial,sans-serif; }
body.nagn-theme * { box-sizing:border-box; }
body.nagn-theme a { color:inherit; text-decoration:none; }
body.nagn-theme .page_wrap { width:100%; }
.nagn-header { position:sticky; top:0; z-index:100; display:flex; align-items:center; min-height:100px; padding:12px 5vw; border-bottom:1px solid var(--nagn-line); background:rgba(5,5,5,.94); backdrop-filter:blur(14px); }
.nagn-brand { display:inline-flex; align-items:center; }
.nagn-brand img { display:block; width:min(320px,32vw); height:auto; }
.nagn-nav { display:flex; align-items:center; gap:34px; margin-left:auto; margin-right:44px; font-size:13px; font-weight:700; }
.nagn-nav a { position:relative; }
.nagn-nav a::after { content:""; position:absolute; right:100%; bottom:-7px; left:0; height:1px; background:var(--nagn-gold-light); transition:right .25s ease; }
.nagn-nav a:hover::after,.nagn-nav a:focus-visible::after { right:0; }
.nagn-cta,.nagn-button { display:inline-flex; align-items:center; justify-content:space-between; gap:28px; padding:15px 20px; border:1px solid var(--nagn-gold); background:var(--nagn-gold); color:#090806!important; font-size:12px; font-weight:800; line-height:1.2; transition:transform .2s ease,background .2s ease; }
.nagn-cta:hover,.nagn-button:hover { background:var(--nagn-gold-light); transform:translateY(-2px); }
.nagn-menu-toggle { display:none; margin-left:auto; padding:11px 13px; border:1px solid var(--nagn-gold); background:transparent; color:var(--nagn-ivory); font:inherit; font-size:12px; font-weight:800; }
.nagn-site { overflow:hidden; background:var(--nagn-black); }
.nagn-hero { position:relative; display:grid; grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr); align-items:center; min-height:700px; gap:7vw; padding:76px 10vw 90px 8vw; }
.nagn-hero::before { content:""; position:absolute; top:90px; left:-300px; width:500px; height:500px; border:1px solid rgba(201,163,72,.32); border-radius:50%; box-shadow:0 0 0 70px rgba(201,163,72,.04),0 0 0 140px rgba(201,163,72,.02); }
.nagn-hero__copy,.nagn-hero__panel { position:relative; z-index:1; }
.nagn-eyebrow { margin:0 0 24px; color:var(--nagn-gold-light); font-size:11px; font-weight:800; letter-spacing:.22em; text-transform:uppercase; }
.nagn-hero h1,.nagn-section h2,.nagn-panel__statement,.nagn-quote blockquote,.nagn-service h3,.nagn-step h3 { font-family:Georgia,'Times New Roman',serif; }
.nagn-hero h1 { max-width:850px; margin:0; color:#f8f3e9; font-size:clamp(54px,6.1vw,90px); font-weight:500; line-height:.94; letter-spacing:-.045em; }
.nagn-lead { max-width:630px; margin:32px 0 38px; color:var(--nagn-muted); font-size:17px; line-height:1.75; }
.nagn-actions { display:flex; align-items:center; gap:34px; flex-wrap:wrap; }
.nagn-text-link { padding-bottom:7px; border-bottom:1px solid var(--nagn-gold); font-size:12px; font-weight:800; }
.nagn-panel { position:relative; min-height:430px; padding:48px; border:1px solid var(--nagn-line); background:linear-gradient(145deg,#18150e,#0b0a08 68%); box-shadow:30px 30px 0 rgba(201,163,72,.08); display:flex; flex-direction:column; justify-content:flex-end; }
.nagn-panel__orbit { position:absolute; top:28px; right:28px; left:28px; height:130px; border:1px solid rgba(231,199,109,.58); border-radius:50%; transform:rotate(-7deg); }
.nagn-panel__orbit::before,.nagn-panel__orbit::after { content:""; position:absolute; inset:18px -14px; border:1px solid rgba(201,163,72,.2); border-radius:50%; }
.nagn-panel__orbit::after { inset:40px -27px -26px; }
.nagn-panel__statement { margin:12px 0 34px; font-size:32px; line-height:1.15; }
.nagn-panel__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; padding-top:18px; border-top:1px solid rgba(255,255,255,.2); font-size:10px; letter-spacing:.12em; text-transform:uppercase; }
.nagn-sectors { display:flex; align-items:center; gap:5vw; padding:22px 8vw; border-top:1px solid var(--nagn-line); border-bottom:1px solid var(--nagn-line); background:#090908; }
.nagn-sectors p { margin:0; color:#958b77; font-size:10px; letter-spacing:.18em; text-transform:uppercase; white-space:nowrap; }
.nagn-sectors div { display:flex; flex:1; justify-content:space-between; gap:22px; color:#c9c0ae; font-family:Georgia,serif; font-size:18px; }
.nagn-section { padding:110px 8vw; }
.nagn-services { display:grid; grid-template-columns:.72fr 1.28fr; gap:9vw; }
.nagn-section__intro { align-self:start; position:sticky; top:130px; }
.nagn-section h2 { margin:0; color:#f7f2e7; font-size:clamp(46px,5vw,70px); font-weight:500; line-height:1; letter-spacing:-.035em; }
.nagn-section__intro>p:last-child { max-width:430px; margin-top:28px; color:var(--nagn-muted); font-size:14px; line-height:1.7; }
.nagn-services__list { border-top:1px solid var(--nagn-line); }
.nagn-service { display:grid; grid-template-columns:50px minmax(180px,.65fr) 1fr; gap:30px; padding:38px 0; border-bottom:1px solid var(--nagn-line); }
.nagn-service>span { color:var(--nagn-gold); font-size:11px; font-weight:800; }
.nagn-service h3 { margin:0; color:#f2ead9; font-size:28px; font-weight:600; }
.nagn-service p { margin:0; color:var(--nagn-muted); font-size:13px; line-height:1.75; }
.nagn-approach { display:grid; grid-template-columns:.75fr 1.25fr; gap:8vw; border-top:1px solid var(--nagn-line); border-bottom:1px solid var(--nagn-line); background:linear-gradient(135deg,#17140e,#090908); }
.nagn-steps { margin:0; padding:0; border-top:1px solid var(--nagn-line); list-style:none; }
.nagn-step { display:grid; grid-template-columns:55px 1fr; gap:25px; padding:31px 0; border-bottom:1px solid var(--nagn-line); }
.nagn-step>span { color:var(--nagn-gold); font-size:11px; }
.nagn-step h3 { margin:0 0 9px; color:var(--nagn-ivory); font-size:27px; font-weight:500; }
.nagn-step p { margin:0; color:var(--nagn-muted); font-size:13px; line-height:1.65; }
.nagn-quote { max-width:1100px; margin:0 auto; text-align:center; }
.nagn-quote__mark { height:50px; margin:0; color:var(--nagn-gold); font:80px/1 Georgia,serif; }
.nagn-quote blockquote { margin:25px auto 30px; color:#f7f2e7; font-size:clamp(40px,5.2vw,70px); font-style:normal; line-height:1.05; }
.nagn-quote__caption { color:#9f9279; font-size:9px; font-weight:800; letter-spacing:.17em; text-transform:uppercase; }
.nagn-contact { display:grid; grid-template-columns:1.15fr .85fr; align-items:end; gap:10vw; border-top:1px solid var(--nagn-line); background:var(--nagn-panel-soft); }
.nagn-contact__copy>p { margin:0 0 30px; color:var(--nagn-muted); font-size:14px; line-height:1.75; }
.nagn-contact__copy small { display:block; margin-top:17px; color:#918875; font-size:10px; }
.nagn-footer { display:grid; grid-template-columns:1fr 1fr 1fr; align-items:center; gap:30px; padding:34px 5vw; border-top:1px solid var(--nagn-line); background:#020202; color:#bdb5a5; font-size:10px; letter-spacing:.08em; }
.nagn-footer img { width:min(280px,30vw); height:auto; }
.nagn-footer p { margin:0; }
.nagn-footer p:nth-child(2) { text-align:center; }
.nagn-footer p:last-child { text-align:right; }
.nagn-site :focus-visible,.nagn-header :focus-visible,.nagn-footer :focus-visible { outline:2px solid var(--nagn-gold-light); outline-offset:4px; }
@media(max-width:900px){.nagn-header{min-height:82px;padding:10px 24px}.nagn-brand img{width:min(270px,56vw)}.nagn-menu-toggle{display:block}.nagn-nav{position:absolute;top:100%;right:20px;left:20px;display:none;margin:0;padding:22px;border:1px solid var(--nagn-line);background:#0b0a08;flex-direction:column;align-items:flex-start}.nagn-nav.is-open{display:flex}.nagn-header>.nagn-cta{display:none}.nagn-hero{grid-template-columns:1fr;gap:65px;padding:70px 7vw 95px}.nagn-services,.nagn-approach,.nagn-contact{grid-template-columns:1fr}.nagn-section__intro{position:static}.nagn-services__list{margin-top:20px}.nagn-approach{gap:60px}.nagn-sectors{overflow-x:auto}.nagn-sectors div{gap:35px}.nagn-footer{grid-template-columns:1fr;text-align:left}.nagn-footer img{width:min(300px,80vw)}.nagn-footer p:nth-child(2),.nagn-footer p:last-child{text-align:left}}
@media(max-width:560px){.nagn-brand img{width:min(225px,64vw)}.nagn-hero h1{font-size:49px}.nagn-panel{min-height:380px;padding:34px;box-shadow:16px 16px 0 rgba(201,163,72,.08)}.nagn-sectors>p{display:none}.nagn-section{padding:82px 7vw}.nagn-service{grid-template-columns:38px 1fr}.nagn-service p{grid-column:2}.nagn-contact{gap:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.nagn-cta,.nagn-button{transition:none}}
