*{box-sizing:border-box}:root{--ink:#111110;--paper:#f2f1ed;--soft:#deddd7;--line:rgba(17,17,16,.16);--muted:#696863;--white:#fff}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",Arial,sans-serif;font-weight:300}a{text-decoration:none;color:inherit}img{max-width:100%;height:auto;display:block}.container{width:min(1320px,calc(100% - 80px));margin:auto}.eyebrow{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}.eyebrow.inverse{color:#aaa}.btn{display:inline-flex;align-items:center;gap:26px;padding:16px 20px;border:1px solid var(--ink);font-size:10px;letter-spacing:.16em;text-transform:uppercase;transition:.3s}.btn.dark{background:var(--ink);color:#fff}.btn.light{background:#fff}.btn:hover{transform:translateY(-2px)}.site-header{position:absolute;top:0;left:0;width:100%;z-index:10;color:var(--ink);padding:24px 0}.site-header.is-dark{color:#fff}.nav{display:flex;align-items:center;justify-content:space-between}.logo{font-family:Manrope,sans-serif;font-size:21px;letter-spacing:.29em;font-weight:400}.logo small{display:block;font-size:7px;letter-spacing:.24em;margin-top:4px;opacity:.75}.navlinks{display:block;font-size:10px;letter-spacing:.15em;text-transform:uppercase}.navlinks a{opacity:.82;position:relative}.navlinks a:after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:1px;background:currentColor;transition:.3s}.navlinks a:hover:after{width:100%}.menu-toggle{display:none;border:0;background:none;color:inherit;cursor:pointer;font-size:11px;letter-spacing:.15em;text-transform:uppercase}.hero{min-height:760px;height:88vh;position:relative;background:#14130f;overflow:hidden}.hero-content{position:relative;z-index:2;padding-top:235px;color:#fff}.hero h1{font-family:Manrope,sans-serif;font-size:clamp(58px,8vw,116px);line-height:.9;font-weight:300;letter-spacing:-.055em;margin:0 0 20px}.hero h1 span{display:block}.hero-sub{font-family:Manrope,sans-serif;font-size:26px;margin-bottom:22px}.hero-copy{max-width:450px;font-size:15px;line-height:1.65;color:rgba(255,255,255,.78)}.hero-actions{display:flex;gap:12px;margin-top:30px}.hero-meta{position:absolute;bottom:34px;left:0;right:0;z-index:3;color:#fff;font-size:9px;letter-spacing:.18em;text-transform:uppercase;display:flex;gap:14px;align-items:center}.hero-meta i{display:block;width:34px;height:1px;background:#fff}.intro{display:grid;grid-template-columns:1fr 1fr;min-height:570px}.intro-copy{padding:105px 10% 90px 0;display:flex;flex-direction:column;justify-content:center}.intro h2,.architects h2{font-family:Manrope,sans-serif;font-size:clamp(40px,5vw,68px);line-height:.98;letter-spacing:-.05em;font-weight:300;margin:18px 0 35px}.intro p{max-width:530px;font-size:15px;line-height:1.75;color:var(--muted)}.image-panel{min-height:570px;background:#deddd7 var(--bg) center/cover}.services{background:#e9e8e3;padding:100px 0}.services-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:90px}.services h2,.solutions h2{font-family:Manrope,sans-serif;font-size:clamp(45px,5vw,72px);line-height:.95;letter-spacing:-.055em;font-weight:300;margin:18px 0}.service-list{border-top:1px solid var(--line)}.service{display:grid;grid-template-columns:70px 1fr;gap:20px;padding:28px 0;border-bottom:1px solid var(--line)}.service .num{font-size:11px;letter-spacing:.15em;color:var(--muted)}.service h3{font-size:18px;font-weight:400;margin:0 0 8px}.service p{font-size:13px;line-height:1.6;color:var(--muted);max-width:580px;margin:0}.solutions{background:var(--ink);color:#fff;padding:100px 0 115px}.solutions-head{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:48px}.solutions-head p{max-width:440px;color:rgba(255,255,255,.6);font-size:13px;line-height:1.65}.solution-feature-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.solution-tile{min-height:390px;position:relative;overflow:hidden;background:#242421;padding:22px;display:flex;align-items:flex-end;transition:.5s}.solution-tile:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.9),rgba(0,0,0,.1) 65%),var(--img) center/cover;transition:transform .7s}.solution-tile:hover:before{transform:scale(1.06)}.solution-tile h3,.solution-tile .arrow,.tile-num{position:relative;z-index:2}.solution-tile h3{font-family:Manrope,sans-serif;font-weight:300;font-size:22px;margin:0}.solution-tile .arrow{position:absolute;right:20px;bottom:22px;font-size:18px}.tile-num{position:absolute;top:20px;left:20px;font-size:9px;letter-spacing:.15em;color:rgba(255,255,255,.6)}.architects{background:#f6f5f1;display:grid;grid-template-columns:1fr 1fr;min-height:560px}.architect-copy{padding:95px 10% 95px 8%;display:flex;flex-direction:column;justify-content:center}.architect-copy p{font-size:14px;line-height:1.7;color:var(--muted);max-width:540px}.process{margin-top:28px;display:flex;flex-wrap:wrap;gap:8px;font-size:10px}.process span{border-bottom:1px solid var(--line);padding-bottom:7px}.architect-image{background:#deddd7 var(--bg) center/cover}.cta{min-height:390px;display:flex;align-items:center;color:#fff;background:linear-gradient(90deg,rgba(0,0,0,.8),rgba(0,0,0,.42)),var(--bg) center/cover #1c1b18}.cta-grid{display:grid;grid-template-columns:1fr 1.2fr auto;gap:60px;align-items:center}.cta h2{font-family:Manrope,sans-serif;font-size:clamp(42px,5vw,68px);font-weight:300;line-height:.95;letter-spacing:-.05em;margin:15px 0}.cta p{font-size:14px;line-height:1.7;color:rgba(255,255,255,.76);max-width:470px}.site-footer{background:#f6f5f1;padding:58px 0 30px}.footer-top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;padding-bottom:70px}.footer-brand .logo{color:var(--ink)}.footer-brand p{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-top:8px}.site-footer h4{font-size:10px;text-transform:uppercase;letter-spacing:.16em;font-weight:500;margin:0 0 18px}.site-footer a{font-size:12px;color:var(--muted);line-height:2.1}.site-footer ul{padding:0;margin:0;list-style:none}.copyright{border-top:1px solid var(--line);padding-top:18px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
.catalog-page,.project-form-page{padding:170px 0 120px}.catalog-head{padding-bottom:55px}.catalog-head h1,.form-intro h1,.generic-page h1{font-family:Manrope,sans-serif;font-size:clamp(55px,8vw,110px);line-height:.9;font-weight:300;letter-spacing:-.055em;margin:18px 0 25px}.catalog-head p,.form-intro p{max-width:650px;font-size:15px;line-height:1.7;color:var(--muted)}.filter-bar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;gap:28px;overflow:auto;padding:18px 0;margin-bottom:35px}.filter{font-size:10px;letter-spacing:.13em;text-transform:uppercase;white-space:nowrap;color:var(--muted)}.filter:hover,.filter.active{color:var(--ink)}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px 18px}.product-card{display:block}.product-image{aspect-ratio:1/.88;background:#deddd7;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:cover;transition:.6s}.product-card:hover .product-image img{transform:scale(1.04)}.image-placeholder{width:100%;height:100%;display:grid;place-items:center;font-family:Manrope;font-size:18px;letter-spacing:.25em;color:#777}.product-info{padding:17px 0 5px}.product-info h2{font-family:Manrope;font-weight:300;font-size:25px;margin:8px 0 12px}.product-info span{font-size:10px;text-transform:uppercase;letter-spacing:.13em}.product-single{padding-top:105px}.product-hero{display:grid;grid-template-columns:1.15fr .85fr;min-height:80vh}.product-photo{background:#deddd7;min-height:650px}.product-photo img{width:100%;height:100%;object-fit:cover}.product-detail{padding:12vw 8vw;display:flex;flex-direction:column;justify-content:center}.product-detail h1{font-family:Manrope;font-size:clamp(50px,6vw,90px);font-weight:300;line-height:.92;letter-spacing:-.055em;margin:18px 0 30px}.product-description{color:var(--muted);line-height:1.8;font-size:15px;margin-bottom:35px}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.project-card{position:relative;min-height:520px;background:#222;overflow:hidden;color:#fff}.project-card img{position:absolute;width:100%;height:100%;object-fit:cover;opacity:.82;transition:.7s}.project-card:hover img{transform:scale(1.04);opacity:.95}.project-card>div{position:absolute;left:28px;right:28px;bottom:28px;z-index:2}.project-card h2{font-family:Manrope;font-size:38px;font-weight:300;margin:8px 0}.project-single{padding-top:100px}.project-cover{max-height:75vh;overflow:hidden}.project-cover img{width:100%;max-height:75vh;object-fit:cover}.project-content{padding:70px 0 120px}.project-content h1{font-family:Manrope;font-weight:300;font-size:clamp(50px,7vw,100px);line-height:.9;letter-spacing:-.055em}.project-copy{max-width:800px;color:var(--muted);font-size:16px;line-height:1.8}.generic-page{padding:180px 0 120px;min-height:70vh}.generic-inner{max-width:1050px}.generic-content{font-size:16px;line-height:1.8;color:var(--muted);max-width:850px}.form-intro{max-width:900px;margin-bottom:60px}.project-form{max-width:1100px;border-top:1px solid var(--line);padding-top:45px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.project-form label,.project-form legend{display:block;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}.project-form input,.project-form select,.project-form textarea{display:block;width:100%;margin-top:10px;border:0;border-bottom:1px solid var(--line);background:transparent;padding:13px 0;color:var(--ink);outline:0}.project-form input:focus,.project-form select:focus,.project-form textarea:focus{border-bottom-color:var(--ink)}fieldset{border:0;border-top:1px solid var(--line);margin:50px 0 35px;padding:28px 0}.checks{display:flex;flex-wrap:wrap;gap:15px 30px;margin-top:20px}.checks label{display:flex;align-items:center;gap:8px}.checks input{width:auto;margin:0}.upload{margin:30px 0}.upload small{display:block;margin-top:12px;text-transform:none;letter-spacing:0;color:var(--muted);font-size:11px}.submit-btn{margin-top:25px;cursor:pointer}.form-notice{padding:18px;margin:25px 0;font-size:13px}.form-notice.success{background:#e4eadf}.form-notice.error{background:#eee1dc}.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.empty-state{padding:50px 0;color:var(--muted)}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:none}
@media(max-width:900px){.container{width:min(100% - 40px,1320px)}.navlinks{display:none}.menu-toggle{display:block}.navlinks.mobile-open{display:flex;position:absolute;top:70px;left:20px;right:20px;flex-direction:column;gap:20px;padding:24px;background:rgba(17,17,16,.97)}.hero{height:760px}.hero-content{padding-top:190px}.intro,.architects,.product-hero{grid-template-columns:1fr}.image-panel,.architect-image{min-height:420px;order:-1}.intro-copy{padding:70px 0}.services-grid{grid-template-columns:1fr;gap:50px}.solution-feature-grid{grid-template-columns:repeat(2,1fr)}.solution-tile{min-height:320px}.solutions-head{display:block}.solutions-head p{margin-top:25px}.cta-grid{grid-template-columns:1fr;gap:20px;padding:75px 0}.cta{min-height:500px}.footer-top{grid-template-columns:1fr 1fr}.product-photo{min-height:500px}.product-detail{padding:75px 0}.project-grid,.product-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.hero{min-height:720px;height:100svh}.hero-content{padding-top:170px}.hero h1{font-size:58px}.hero-sub{font-size:21px}.hero-actions{flex-direction:column;align-items:flex-start}.solution-feature-grid,.product-grid,.project-grid,.form-grid{grid-template-columns:1fr}.solution-tile{min-height:350px}.footer-top{grid-template-columns:1fr}.copyright{display:block}.copyright span{display:block;margin-top:8px}.catalog-page,.project-form-page{padding-top:140px}.project-form-page{padding-bottom:80px}}

/* V2 refinement — premium header CTA */
.header-project{display:inline-flex;align-items:center;gap:18px;padding:8px 0;border-bottom:1px solid currentColor;font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:inherit;transition:.3s}
.header-project span{font-size:17px;line-height:1}
.header-project:hover{gap:25px}

/* Landing project form */
.landing-form{background:#171715;color:#fff;padding:105px 0 115px}
.landing-form-head{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:end;margin-bottom:55px}
.landing-form-head h2{font-family:Manrope,sans-serif;font-size:clamp(45px,5vw,74px);line-height:.95;letter-spacing:-.055em;font-weight:300;margin:18px 0 0}
.landing-form-head h2 em{font-style:normal}
.landing-form-head p{max-width:520px;color:rgba(255,255,255,.62);font-size:15px;line-height:1.75;margin:0 0 5px}
.landing-project-form{border-top:1px solid rgba(255,255,255,.18);padding-top:45px;max-width:none}
.landing-project-form label{color:rgba(255,255,255,.58)}
.landing-project-form input,.landing-project-form select,.landing-project-form textarea{color:#fff;border-bottom-color:rgba(255,255,255,.2)}
.landing-project-form input::placeholder,.landing-project-form textarea::placeholder{color:rgba(255,255,255,.3)}
.landing-project-form input:focus,.landing-project-form select:focus,.landing-project-form textarea:focus{border-bottom-color:#fff}
.landing-project-form select option{background:#171715;color:#fff}
.landing-project-form fieldset{border-top-color:rgba(255,255,255,.18)}
.landing-project-form legend{color:rgba(255,255,255,.58)}
.landing-project-form .checks label{color:rgba(255,255,255,.72);text-transform:none;letter-spacing:0;font-size:13px}
.landing-upload{margin-top:35px;border:1px dashed rgba(255,255,255,.3);padding:24px 25px}
.landing-upload label{margin:0}
.landing-upload input{border:0;padding:12px 0 0}
.landing-upload small{display:block;color:rgba(255,255,255,.45);font-size:11px;margin-top:8px;text-transform:none;letter-spacing:0}
.landing-form-bottom{display:flex;align-items:center;gap:28px;margin-top:30px}
.landing-form-bottom .submit-btn{margin-top:0}
.landing-note{font-size:10px;letter-spacing:.05em;color:rgba(255,255,255,.4)}
.landing-form .form-notice{color:#111;background:#e4eadf}
.landing-form .form-notice.error{background:#eee1dc}

@media(max-width:900px){
 .header-project{display:none}
 .landing-form-head{grid-template-columns:1fr;gap:25px}
 .landing-form{padding:85px 0}
}
@media(max-width:560px){
 .landing-form-bottom{align-items:flex-start;flex-direction:column;gap:15px}
}

/* V2.2 editable logo */
.brand-logo{display:block;max-width:190px;max-height:48px;width:auto;height:auto;object-fit:contain}
@media(max-width:560px){.brand-logo{max-width:145px;max-height:40px}}

/* Logo */
.brand-logo{max-width:205px;max-height:50px;width:auto;height:auto;object-fit:contain;display:block}
@media(max-width:560px){.brand-logo{max-width:155px;max-height:42px}}

/* HERRARQ V2.8 — Solutions interior */
.solutions-page{background:#f1f0ec;color:#171715}.solutions-hero{background:#171715;color:#fff;padding:145px 0 120px;position:relative;overflow:hidden}.solutions-hero:after{content:'SOLUTIONS';position:absolute;right:-20px;bottom:-55px;font-size:15vw;line-height:.8;font-weight:500;letter-spacing:-.08em;color:rgba(255,255,255,.035);pointer-events:none}.solutions-hero-inner{position:relative;z-index:1;max-width:1180px}.solutions-hero h1{font-size:clamp(54px,8vw,112px);line-height:.9;letter-spacing:-.055em;font-weight:300;margin:28px 0 34px;max-width:900px}.solutions-hero p{max-width:650px;font-size:17px;line-height:1.7;color:rgba(255,255,255,.62);margin:0}.solutions-catalog{padding:110px 0 125px}.catalog-intro{border-bottom:1px solid rgba(23,23,21,.15);padding-bottom:58px;margin-bottom:42px}.catalog-intro-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:end}.catalog-intro h2{font-size:clamp(42px,5vw,72px);line-height:.95;letter-spacing:-.05em;font-weight:300;margin:20px 0 0}.catalog-intro h2 em{font-style:normal;font-weight:500}.catalog-intro p{font-size:15px;line-height:1.75;color:rgba(23,23,21,.6);max-width:520px;margin:0}.solution-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;background:rgba(23,23,21,.12)}.solution-category-card{min-height:430px;background:#222;position:relative;color:#fff;padding:27px 30px 30px;display:flex;flex-direction:column;justify-content:space-between;background-size:cover;background-position:center;text-decoration:none;overflow:hidden}.solution-category-card:nth-child(3n){min-height:500px}.solution-category-card:before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,15,14,.12) 0%,rgba(15,15,14,.08) 35%,rgba(15,15,14,.86) 100%);transition:opacity .35s ease}.solution-category-card:hover:before{opacity:.72}.solution-category-card>*{position:relative;z-index:1}.solution-category-top{display:flex;justify-content:space-between;align-items:center;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.7)}.solution-category-top b{font-size:22px;font-weight:300}.solution-category-bottom h3{font-size:32px;line-height:1.05;letter-spacing:-.035em;font-weight:400;margin:0 0 14px;max-width:480px}.solution-category-bottom p{font-size:13px;line-height:1.65;color:rgba(255,255,255,.64);max-width:520px;margin:0 0 20px}.solution-more{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#fff;border-bottom:1px solid rgba(255,255,255,.45);padding-bottom:7px}.solutions-spec{background:#171715;color:#fff;padding:100px 0}.solutions-spec-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:end}.solutions-spec h2{font-size:clamp(45px,5vw,70px);line-height:.92;letter-spacing:-.05em;font-weight:300;margin:22px 0 0}.solutions-spec p{color:rgba(255,255,255,.6);font-size:15px;line-height:1.75;max-width:550px;margin:0 0 28px}.solutions-spec .btn{width:max-content}@media(max-width:900px){.solutions-hero{padding:110px 0 90px}.catalog-intro-grid,.solutions-spec-grid{grid-template-columns:1fr;gap:35px}.solution-category-grid{grid-template-columns:1fr}.solution-category-card,.solution-category-card:nth-child(3n){min-height:390px}}@media(max-width:560px){.solutions-hero h1{font-size:52px}.solutions-catalog{padding:75px 0}.catalog-intro{padding-bottom:40px}.solution-category-card{min-height:350px;padding:22px}.solution-category-bottom h3{font-size:27px}.solutions-spec{padding:75px 0}}

/* ===== TERRARQ V12 — correcciones y mejoras ===== */

/* Accesibilidad */
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}
.skip-link:focus{clip:auto;clip-path:none;height:auto;width:auto;margin:0;padding:12px 18px;background:#111;color:#fff;z-index:100000;left:12px;top:12px;font-size:12px}
:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.project-form input:focus-visible,.project-form select:focus-visible,.project-form textarea:focus-visible{outline:0;border-bottom-width:2px}

/* Navegación (lista dentro del <nav>) */
.navlinks ul{display:flex;gap:44px;margin:0;padding:0;list-style:none}
.navlinks li{margin:0;padding:0}
.btn span{display:inline-block;transition:transform .3s}
.btn:hover span{transform:translateX(4px)}

/* Botones: oscuros sobre fondos claros, translúcidos sobre fondos oscuros */
.btn{background:transparent;color:var(--ink);border:1px solid var(--ink)}
.btn:hover{background:var(--ink);color:#fff}
.btn.dark{background:var(--ink);color:#fff}
.btn.dark:hover{background:#2b2b28}
.hero .btn,.cta .btn,.solutions .btn,.solutions-hero .btn,.solutions-spec .btn,.landing-form .btn{background:#ffffff29;color:#fff;border:1px solid transparent}
.hero .btn:hover,.cta .btn:hover,.solutions .btn:hover,.solutions-hero .btn:hover,.solutions-spec .btn:hover,.landing-form .btn:hover{background:rgba(255,255,255,.22);color:#fff}
.text-link{border-bottom:1px solid currentColor;padding-bottom:4px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink)}

/* Hero */
.hero-inner{max-width:700px}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(8,8,7,.91),rgba(8,8,7,.72) 36%,rgba(8,8,7,.14) 70%)}

/* Alineación de bloques de texto con el contenedor en pantallas anchas */
.intro-copy{width:auto;margin:0 0 0 max(40px,calc((100vw - 1320px)/2))}
.architect-copy{padding-left:0;margin-left:max(40px,calc((100vw - 1320px)/2))}

/* Contraste en secciones oscuras */
.eyebrow.inverse{color:#b8b8b2}
.landing-note{color:rgba(255,255,255,.62)}
.landing-upload small{color:rgba(255,255,255,.6)}
.landing-project-form input::placeholder,.landing-project-form textarea::placeholder{color:rgba(255,255,255,.5)}
.form-notice.error{color:#4a1f10}

/* Solutions interior */
.solutions-page h1,.solutions-page h2,.solutions-page h3{font-family:Manrope,sans-serif}
.solutions-hero.has-image{background:linear-gradient(rgba(23,23,21,.84),rgba(23,23,21,.84)),var(--bg) center/cover}
.solution-category-card.is-static{cursor:default}
.catalog-intro-grid p+p{margin-top:18px}

/* Catálogo / proyectos */
.catalog-banner{height:min(40vh,380px);background:#deddd7 var(--bg) center/cover;margin-bottom:50px}
.pagination{margin-top:55px}
.pagination .nav-links{display:flex;flex-wrap:wrap;gap:18px;font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
.pagination .page-numbers.current{color:var(--ink);border-bottom:1px solid var(--ink)}

/* Páginas genéricas, blog y 404 */
.generic-content>*+*{margin-top:1.2em}
.generic-content h2,.generic-content h3,.generic-content h4{font-family:Manrope,sans-serif;color:var(--ink);font-weight:400;line-height:1.1;letter-spacing:-.02em}
.generic-content a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.generic-content .btn{text-decoration:none}
.generic-content ul,.generic-content ol{padding-left:1.3em}
.generic-content blockquote{border-left:2px solid var(--ink);margin-left:0;padding-left:20px}
.generic-content img,.generic-content figure{max-width:100%;height:auto}
.generic-content .alignwide{max-width:min(1100px,100vw - 40px)}
.generic-content table{border-collapse:collapse;width:100%}
.generic-content td,.generic-content th{border-bottom:1px solid var(--line);padding:10px 8px;text-align:left}
.post-list article{padding:28px 0;border-bottom:1px solid var(--line)}
.post-list h2{font-family:Manrope,sans-serif;font-weight:300;font-size:32px;margin:8px 0 12px}
.search-form{display:flex;gap:10px;max-width:480px}
.search-form label{flex:1}
.search-form input[type=search]{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:12px 0;font:inherit;color:var(--ink)}
.search-form input[type=submit]{border:1px solid var(--ink);background:transparent;padding:0 18px;cursor:pointer;font:inherit}

/* Tablet / móvil */
@media(max-width:900px){
 .intro-copy{width:min(100% - 40px,1320px);margin:0 auto}
 .architect-copy{margin-left:0;padding-left:8%}
 .navlinks.mobile-open{color:#fff}
 .navlinks.mobile-open ul{flex-direction:column;gap:20px}
 .solution-tile:last-child:nth-child(odd){grid-column:1/-1}
}

/* Movimiento reducido */
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 *,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}
 .reveal{opacity:1;transform:none}
}

/* v1.0 Strike */
.landing-form{scroll-margin-top:0}
.solution-category-card:last-child:nth-child(odd){grid-column:1/-1}
