﻿:root{--navy:#10273a;--navy2:#0a1926;--gold:#b88a3b;--ink:#14202a;--paper:#f6f4ef;--white:#fff;--muted:#69747d;--line:#ded8cd}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:#fff}.top{position:sticky;top:0;z-index:20;height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;background:rgba(255,255,255,.96);border-bottom:1px solid #eee}.brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--navy);font-weight:700}.gr{font-family:Georgia,serif;font-size:29px}.gr i{color:var(--gold);font-style:normal;margin:0 2px}.gr em{color:var(--gold);font-style:normal}.top nav{display:flex;align-items:center;gap:24px}.top nav a{text-decoration:none;color:var(--ink);font-size:14px}.top nav .navcta{background:var(--navy);color:#fff;padding:12px 16px}.hero{min-height:650px;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:7vw;padding:90px 7vw;background:linear-gradient(115deg,#f7f5f0 0%,#fff 60%)}.eyebrow{font-size:12px;letter-spacing:.18em;font-weight:800;color:var(--gold)}h1{font-family:Georgia,serif;color:var(--navy);font-size:clamp(46px,6vw,78px);line-height:1.02;margin:18px 0 24px;max-width:850px}h2{font-family:Georgia,serif;color:var(--navy);font-size:clamp(34px,4vw,52px);line-height:1.08;margin:10px 0 18px}.lead{font-size:20px;line-height:1.6;max-width:760px;color:#47545e}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:32px 0}.btn{display:inline-block;border:0;text-decoration:none;padding:15px 20px;font-weight:800;cursor:pointer;font-size:14px}.gold{background:var(--gold);color:#fff}.outline{border:1px solid var(--navy);color:var(--navy)}.trust{display:flex;gap:24px;flex-wrap:wrap;color:var(--muted);font-size:13px}.hero-card{min-height:360px;background:var(--navy);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;box-shadow:0 30px 70px rgba(16,39,58,.22);text-align:center;padding:30px}.monogram{font-family:Georgia,serif;font-weight:700;font-size:92px}.monogram span{color:var(--gold);font-weight:400}.hero-card p{letter-spacing:.18em;font-size:13px}.hero-card small{color:#d8c9aa}.section{padding:95px 7vw}.section-head{max-width:850px;margin-bottom:45px}.section-head>p:not(.eyebrow){color:var(--muted);font-size:17px;line-height:1.6}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line)}.grid4 article{background:#fff;padding:36px}.grid4 b{color:var(--gold);font-size:26px}.grid4 h3{font-family:Georgia,serif;color:var(--navy);font-size:22px}.grid4 p{color:var(--muted);line-height:1.6}.dark{background:var(--navy);color:#dfe6ea}.dark h2{color:#fff}.split{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}.split p{font-size:17px;line-height:1.7}.split img{width:100%;height:470px;object-fit:cover}.textlink{color:#e3bd76;text-decoration:none;font-weight:800}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery figure{margin:0;background:var(--paper)}.gallery img{display:block;width:100%;height:300px;object-fit:cover}.gallery figcaption{padding:14px 16px;font-size:13px;font-weight:700}.business{background:var(--paper);display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.process{display:grid;gap:14px}.process span{background:#fff;padding:20px;font-weight:700}.process b{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--navy);color:#fff;margin-right:12px}.quote{max-width:1100px;margin:auto}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:grid;gap:8px;font-size:13px;font-weight:800;margin-bottom:18px}input,select,textarea{width:100%;border:1px solid #cfd3d6;padding:14px;font:inherit;background:#fff}textarea{resize:vertical}.formnote{font-size:13px;color:var(--muted);line-height:1.5}footer{background:var(--navy2);color:#fff;padding:38px 7vw;display:flex;align-items:center;justify-content:space-between;gap:20px}footer .brand{color:#fff}footer a{color:#e3bd76;text-decoration:none;font-weight:800}@media(max-width:900px){.top nav a:not(.navcta){display:none}.hero,.split,.business{grid-template-columns:1fr}.hero{padding-top:55px}.hero-card{min-height:260px}.grid4{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:1fr 1fr}.split img{height:360px}}@media(max-width:560px){.top{padding:0 18px}.brand>span:last-child{font-size:12px}.hero,.section{padding-left:20px;padding-right:20px}.grid4,.gallery,.formgrid{grid-template-columns:1fr}h1{font-size:45px}.lead{font-size:17px}.trust{gap:10px 16px}.gallery img{height:260px}footer{align-items:flex-start;flex-direction:column}}
.uploadbox{border:1px dashed #aab2b8;padding:18px;background:#fbfaf7}.uploadbox input{border:0;padding:8px 0;background:transparent}.uploadbox span{font-weight:400;color:var(--muted);font-size:12px}.media-preview{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:0 0 18px}.media-item{position:relative;background:var(--paper);border:1px solid var(--line);min-height:110px;display:grid;place-items:center;overflow:hidden}.media-item img,.media-item video{width:100%;height:120px;object-fit:cover}.media-item .filetag{padding:12px;font-size:11px;text-align:center}.formnote.strong{background:var(--paper);border-left:4px solid var(--gold);padding:14px 16px}.send-options{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.btn.soft{background:#e9edf0;color:var(--navy)}.assistant-panel{position:fixed;inset:0;background:rgba(6,18,27,.56);display:none;align-items:flex-end;justify-content:flex-end;padding:24px;z-index:80}.assistant-panel.open{display:flex}.assistant-card{position:relative;width:min(440px,100%);max-height:82vh;overflow:auto;background:#fff;box-shadow:0 30px 100px rgba(0,0,0,.28);padding:28px}.assistant-close{position:absolute;right:14px;top:10px;border:0;background:none;font-size:30px;cursor:pointer;color:var(--muted)}.assistant-card h3{font-family:Georgia,serif;color:var(--navy);font-size:28px;margin:8px 0 18px}.assistant-log{display:grid;gap:10px;margin-bottom:14px}.bubble{padding:12px 14px;line-height:1.45;font-size:14px;max-width:90%}.bubble.bot{background:var(--paper);justify-self:start}.bubble.user{background:var(--navy);color:#fff;justify-self:end}.assistant-choices{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 14px}.choice{border:1px solid var(--navy);background:#fff;color:var(--navy);padding:9px 11px;font-weight:700;cursor:pointer}.assistant-input-row{display:flex;gap:8px}.assistant-input-row input{margin:0}.assistant-card small{display:block;color:var(--muted);line-height:1.5;margin-top:14px}@media(max-width:700px){.media-preview{grid-template-columns:1fr 1fr}.assistant-panel{padding:0}.assistant-card{width:100%;max-height:88vh}.send-options .btn{width:100%;text-align:center}}

.media-remove{
  position:absolute;
  top:8px;
  right:8px;
  z-index:3;
  width:30px;
  height:30px;
  border:0;
  border-radius:50%;
  background:rgba(10,25,38,.92);
  color:#fff;
  font-size:22px;
  line-height:28px;
  cursor:pointer;
  display:grid;
  place-items:center;
  box-shadow:0 4px 14px rgba(0,0,0,.22);
}
.media-remove:hover{background:#8a2f2f}
.media-remove:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.media-name{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  padding:7px 9px;
  background:rgba(10,25,38,.78);
  color:#fff;
  font-size:10px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}


/* IA & FormaciÃ³n */
.intelligence{
  background:linear-gradient(180deg,#f7f4ee 0%,#ffffff 100%);
}
.future-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:28px;
  margin-top:38px;
}
.future-card{
  position:relative;
  display:grid;
  grid-template-columns:72px 1fr;
  gap:22px;
  padding:34px;
  border:1px solid #ddd6ca;
  background:#fff;
  box-shadow:0 18px 45px rgba(16,39,58,.06);
}
.future-card.featured{
  border-top:4px solid var(--gold);
}
.future-icon{
  width:64px;
  height:64px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:var(--navy);
  color:#fff;
  font-weight:800;
  letter-spacing:.08em;
}
.future-badge{
  display:inline-block;
  margin-bottom:8px;
  color:var(--gold);
  font-size:12px;
  font-weight:800;
  letter-spacing:.13em;
}
.future-card h3{
  margin:0 0 12px;
  font-size:25px;
  color:var(--navy);
}
.future-card p{
  margin:0 0 14px;
  color:#465665;
  line-height:1.7;
}
.future-card ul{
  margin:0 0 22px 18px;
  padding:0;
  color:#334656;
  line-height:1.75;
}
.future-card small{
  display:block;
  margin-top:14px;
  color:#71808d;
}
.future-note{
  margin-top:28px;
  padding:18px 22px;
  border-left:4px solid var(--gold);
  background:#fff;
  color:#334656;
}
@media (max-width:900px){
  .future-grid{grid-template-columns:1fr}
}
@media (max-width:600px){
  .future-card{grid-template-columns:1fr;padding:24px}
}

.brand-logo{width:48px;height:48px;object-fit:contain;border-radius:50%;display:block}.hero-logo-card{padding:34px}.hero-logo-card img{width:min(360px,82%);aspect-ratio:1/1;object-fit:contain;border-radius:50%;filter:drop-shadow(0 18px 30px rgba(0,0,0,.18))}.training-section{background:#fbfaf7}.training-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.training-card{background:#fff;border-top:3px solid var(--gold);padding:30px;box-shadow:0 12px 32px rgba(16,39,58,.06)}.training-card>span{font-family:Georgia,serif;font-size:28px;color:var(--gold);font-weight:700}.training-card h3,.professional-training h3{font-family:Georgia,serif;color:var(--navy);font-size:24px;margin:14px 0}.training-card p,.training-card li,.professional-training p{color:var(--muted);line-height:1.6}.training-card ul{padding-left:20px}.professional-training{margin-top:26px;background:var(--navy);color:#fff;padding:34px;display:flex;align-items:center;justify-content:space-between;gap:30px}.professional-training h3{color:#fff;font-size:30px}.professional-training p{color:#dce3e7;max-width:850px}.professional-training .btn{white-space:nowrap}@media(max-width:1000px){.training-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.brand-logo{width:42px;height:42px}.training-grid{grid-template-columns:1fr}.professional-training{align-items:flex-start;flex-direction:column}}

/* V2.4 - compensaciÃ³n de navegaciÃ³n fija */
html { scroll-padding-top: 92px; }
section[id] { scroll-margin-top: 92px; }

@media (max-width: 760px) {
  html { scroll-padding-top: 76px; }
  section[id] { scroll-margin-top: 76px; }
}

.primary-submit{box-shadow:0 10px 22px rgba(191,137,42,.18)}
.primary-submit:disabled{opacity:.65;cursor:wait}

.netlify-honeypot,
.netlify-file-hidden{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
  clip:rect(0 0 0 0) !important;
  white-space:nowrap !important;
  clip-path:inset(50%) !important;
}


/* GR DARK FINAL START */

:root{
  --gr-navy:#10273a;
  --gr-navy-deep:#0b1f30;
  --gr-card:#152f43;
  --gr-card-soft:#19364b;
  --gr-border:rgba(255,255,255,.13);
  --gr-white:#f7f7f5;
  --gr-muted:#c5ced5;
  --gr-gold:#c79335;
  --gr-gold-light:#e0b35d;
}

/* ===== BASE GLOBAL ===== */

html,
body{
  background:var(--gr-navy) !important;
  color:var(--gr-white) !important;
}

body{
  min-height:100vh;
}

main,
section,
.section,
.quote,
.business,
.intelligence,
.training-section,
.future,
.services,
.projects,
.gallery-section{
  background:var(--gr-navy) !important;
  color:var(--gr-white) !important;
}

/* ===== CABECERA ===== */

.top,
header,
.site-header{
  background:rgba(11,31,48,.97) !important;
  border-bottom:1px solid var(--gr-border) !important;
  color:var(--gr-white) !important;
}

.top a,
header a,
nav a{
  color:var(--gr-white) !important;
}

.top a:hover,
header a:hover,
nav a:hover{
  color:var(--gr-gold-light) !important;
}

/* ===== HERO ===== */

.hero{
  background:
    radial-gradient(circle at 70% 30%, rgba(35,74,103,.32), transparent 35%),
    linear-gradient(135deg,var(--gr-navy-deep),var(--gr-navy)) !important;
  color:var(--gr-white) !important;
}

.hero h1,
.hero h2,
.hero h3,
.hero p{
  color:var(--gr-white) !important;
}

.hero-card{
  background:var(--gr-navy-deep) !important;
}

/* ===== TITULOS Y TEXTO ===== */

h1,
h2,
h3,
h4,
h5,
h6{
  color:var(--gr-white) !important;
}

p,
li,
label,
small,
span{
  color:inherit;
}

.eyebrow,
.kicker,
.section-label,
.overline{
  color:var(--gr-gold) !important;
}

.section p,
.business p,
.quote p,
.intelligence p,
.training-section p,
.future-card p{
  color:var(--gr-muted) !important;
}

/* ===== SERVICIOS ===== */

.grid4{
  background:transparent !important;
}

.grid4 article{
  background:transparent !important;
  border-left:1px solid var(--gr-border) !important;
  color:var(--gr-white) !important;
}

.grid4 article:first-child{
  border-left:none !important;
}

.grid4 article h3,
.grid4 article h4{
  color:var(--gr-white) !important;
}

.grid4 article p{
  color:var(--gr-muted) !important;
}

.grid4 .num,
.grid4 strong,
.service-number{
  color:var(--gr-gold) !important;
}

/* ===== DECORACION / ZONAS YA OSCURAS ===== */

.dark,
.professional-training,
.decoracion,
.decoration-section{
  background:var(--gr-navy) !important;
  color:var(--gr-white) !important;
}

/* ===== GALERIA / PROYECTOS ===== */

.gallery,
.gallery-grid{
  background:transparent !important;
}

.gallery figure,
.gallery-grid figure{
  background:var(--gr-card) !important;
  border:1px solid var(--gr-border) !important;
}

.gallery figcaption,
.gallery-grid figcaption{
  background:var(--gr-card) !important;
  color:var(--gr-white) !important;
}

/* ===== INMOBILIARIAS ===== */

.business{
  background:var(--gr-navy-deep) !important;
}

.process span,
.process li,
.business-step{
  background:var(--gr-card) !important;
  color:var(--gr-white) !important;
  border:1px solid var(--gr-border) !important;
}

.process strong{
  color:var(--gr-white) !important;
}

/* ===== IA Y FORMACION ===== */

.intelligence,
.training-section{
  background:var(--gr-navy) !important;
}

.future-card,
.training-card{
  background:var(--gr-card) !important;
  border:1px solid var(--gr-border) !important;
  color:var(--gr-white) !important;
}

.future-card h3,
.training-card h3{
  color:var(--gr-white) !important;
}

.future-card li,
.training-card li{
  color:var(--gr-muted) !important;
}

.future-note{
  background:var(--gr-card-soft) !important;
  color:var(--gr-white) !important;
  border-left:3px solid var(--gr-gold) !important;
}

/* ===== FORMULARIO ===== */

.quote{
  background:var(--gr-navy-deep) !important;
}

form{
  color:var(--gr-white) !important;
}

label{
  color:var(--gr-white) !important;
}

input,
select,
textarea{
  background:#102b40 !important;
  color:var(--gr-white) !important;
  border:1px solid rgba(255,255,255,.22) !important;
}

input::placeholder,
textarea::placeholder{
  color:#9eabb5 !important;
}

select option{
  background:#102b40 !important;
  color:var(--gr-white) !important;
}

input:focus,
select:focus,
textarea:focus{
  border-color:var(--gr-gold) !important;
  outline:none !important;
  box-shadow:0 0 0 2px rgba(199,147,53,.18) !important;
}

.uploadbox{
  background:var(--gr-card) !important;
  border:1px dashed rgba(255,255,255,.28) !important;
  color:var(--gr-white) !important;
}

.formnote,
.formnote.strong{
  background:var(--gr-card-soft) !important;
  color:var(--gr-muted) !important;
  border-left:3px solid var(--gr-gold) !important;
}

/* ===== PREVISUALIZACION DE IMAGENES ===== */

.media-preview,
.preview-item{
  background:var(--gr-card) !important;
  border:1px solid var(--gr-border) !important;
}

/* ===== ASISTENTE ===== */

.assistant-card,
.assistant-panel,
.assistant-modal,
.assistant-body{
  background:var(--gr-navy-deep) !important;
  color:var(--gr-white) !important;
}

.bubble.bot{
  background:var(--gr-card) !important;
  color:var(--gr-white) !important;
}

.bubble.user{
  background:#21445e !important;
  color:var(--gr-white) !important;
}

.choice{
  background:var(--gr-card) !important;
  color:var(--gr-white) !important;
  border:1px solid var(--gr-border) !important;
}

.choice:hover{
  border-color:var(--gr-gold) !important;
}

/* ===== BOTONES ===== */

.btn,
button,
.button,
.primary,
.btn-primary{
  transition:.2s ease;
}

.btn-primary,
.primary,
.cta-primary,
button[type="submit"]{
  background:var(--gr-gold) !important;
  color:#ffffff !important;
  border-color:var(--gr-gold) !important;
}

.btn-primary:hover,
.primary:hover,
.cta-primary:hover,
button[type="submit"]:hover{
  background:var(--gr-gold-light) !important;
}

.btn-secondary,
.secondary,
.whatsapp-button{
  background:transparent !important;
  color:var(--gr-white) !important;
  border:1px solid var(--gr-gold) !important;
}

/* ===== ENLACES ===== */

main a,
section a{
  color:var(--gr-gold-light);
}

main a:hover,
section a:hover{
  color:#f2ca79;
}

/* ===== FOOTER ===== */

footer{
  background:#071928 !important;
  color:var(--gr-white) !important;
  border-top:1px solid var(--gr-border) !important;
}

footer p,
footer span,
footer li{
  color:var(--gr-muted) !important;
}

footer a{
  color:var(--gr-white) !important;
}

footer a:hover{
  color:var(--gr-gold-light) !important;
}

/* ===== ELIMINAR BLANCOS RESIDUALES ===== */

.card,
.panel,
.box,
.content-box,
.info-card{
  background:var(--gr-card) !important;
  color:var(--gr-white) !important;
}

/* GR DARK FINAL END */


/* GR LOGO CIRCLE START */

/* Recorta físicamente la imagen del logo al círculo */
img[src*="gr-logo-oficial.png"]{
    border-radius:50% !important;
    clip-path:circle(50% at 50% 50%) !important;
    object-fit:cover !important;
    background:transparent !important;
    box-shadow:none !important;
}

/* Logo grande de portada */
.hero img[src*="gr-logo-oficial.png"],
.hero-card img[src*="gr-logo-oficial.png"]{
    aspect-ratio:1 / 1 !important;
    border-radius:50% !important;
    clip-path:circle(50% at 50% 50%) !important;
}

/* Logo pequeño de cabecera */
header img[src*="gr-logo-oficial.png"],
.top img[src*="gr-logo-oficial.png"]{
    border-radius:50% !important;
    clip-path:circle(50% at 50% 50%) !important;
}

/* El contenedor del logo grande tampoco debe crear un cuadrado visible */
.hero-card{
    background:transparent !important;
    box-shadow:none !important;
    border:none !important;
}

/* GR LOGO CIRCLE END */
