/*
Theme Name:   Codora (Astra Child)
Theme URI:    https://www.codora.es/
Description:  Tema hijo de Astra para Codora Construcciones. Aquí van los estilos y funciones propios para que no se pierdan al actualizar Astra.
Author:       Master Informática
Author URI:   https://gmaster.eu/
Template:     astra
Version:      1.0.3
License:      GNU General Public License v2 or later
License URI:  https://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  codora-astra-child
*/

/* ===== Codora · paleta y tipografía ===== */
:root{
  --cd-oro:#fab207; --cd-oro-osc:#8a5f00;
  --cd-negro:#18191b; --cd-grafito:#222428; --cd-gris:#4f4f4f;
  --cd-claro:#f4f4f2; --cd-borde:#e6e6e3;
  --cd-radio:10px; --cd-sombra:0 14px 40px rgba(0,0,0,.10);
}
body{font-family:"PT Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--cd-gris);line-height:1.75}
h1,h2,h3,h4,.site-title,.main-header-menu{font-family:"Montserrat",system-ui,sans-serif}
h1,h2,h3,h4{color:var(--cd-negro);letter-spacing:-.01em;line-height:1.2;font-weight:700}
a{color:var(--cd-oro-osc)} a:hover{color:var(--cd-negro)}
::selection{background:var(--cd-oro);color:#111}

/* ===== Barra superior + cabecera oscura y fija ===== */
.cd-topbar{background:#111214;color:#bbb;font-size:13px;letter-spacing:.04em}
.cd-topbar .cd-wrap{max-width:1200px;margin:auto;padding:8px 20px;display:flex;gap:24px;flex-wrap:wrap}
.cd-topbar a{color:var(--cd-oro)} .cd-topbar b{color:var(--cd-oro);font-weight:600}
.site-header{position:sticky;top:0;z-index:99}
.ast-primary-header-bar,.main-header-bar,.site-header .ast-builder-grid-row-container{background:rgba(24,25,27,.96)!important;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.06)}
.custom-logo{max-height:52px;width:auto}
.main-header-menu .menu-link{color:#e9e9e9!important;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.14em}
.main-header-menu .menu-item:hover>.menu-link,.main-header-menu .current-menu-item>.menu-link{color:var(--cd-oro)!important}
.ast-mobile-menu-trigger-minimal,.menu-toggle{color:#fff!important}
.ast-header-break-point .main-header-bar-navigation,.ast-mobile-popup-drawer .ast-mobile-popup-inner{background:var(--cd-negro)}

/* ===== Botones ===== */
.wp-block-button__link,.wp-element-button,.wpcf7-submit,.ast-button{background:var(--cd-oro)!important;color:#111!important;border-radius:999px;padding:.85em 2em;font-family:"Montserrat",sans-serif;font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.12em;border:0;transition:transform .2s,box-shadow .2s,background .2s}
.wp-block-button__link:hover,.wpcf7-submit:hover{background:#fff!important;transform:translateY(-2px);box-shadow:0 10px 24px rgba(250,178,7,.35)}
.is-style-outline .wp-block-button__link{background:transparent!important;color:#fff!important;box-shadow:inset 0 0 0 2px #fff}
.is-style-outline .wp-block-button__link:hover{background:var(--cd-oro)!important;color:#111!important;box-shadow:none}

/* ===== Portada sin márgenes ===== */
.home .site-content>.ast-container{max-width:100%;padding:0}
.home .entry-header{display:none}
.home .entry-content>*{margin-top:0;margin-bottom:0}
.cd-section{padding:96px 20px}
.cd-inner{max-width:1200px;margin:0 auto}
.cd-eyebrow{display:inline-block;color:var(--cd-oro-osc);font-family:"Montserrat",sans-serif;font-size:12px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;margin-bottom:10px}
.cd-title{font-size:clamp(28px,3.6vw,42px);margin:0 0 14px}
.cd-title::after{content:"";display:block;width:56px;height:3px;background:var(--cd-oro);margin:18px 0 0}
.has-text-align-center.cd-title::after,.cd-center .cd-title::after{margin:18px auto 0}
.cd-lead{max-width:720px;font-size:18px}
.cd-center{text-align:center} .cd-center .cd-lead{margin:0 auto}

/* Hero */
.cd-hero{min-height:88vh!important}
.cd-hero h1{color:#fff;font-size:clamp(36px,6vw,72px);font-weight:800;text-transform:uppercase;letter-spacing:.02em;line-height:1.05;text-shadow:0 4px 30px rgba(0,0,0,.45)}
.cd-hero h1 em{font-style:normal;color:var(--cd-oro)}
.cd-hero p{color:#eee;font-size:clamp(16px,1.6vw,20px);max-width:640px}
.cd-hero .cd-eyebrow{color:var(--cd-oro)}

/* Servicios */
.cd-services{background:#fff}
.cd-card{background:#fff;border:1px solid var(--cd-borde);border-radius:var(--cd-radio);overflow:hidden;height:100%;transition:transform .25s,box-shadow .25s}
.cd-card:hover{transform:translateY(-6px);box-shadow:var(--cd-sombra)}
.cd-card figure{margin:0!important} .cd-card img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}
.cd-card .cd-card-body{padding:26px 26px 30px}
.cd-card h3{font-size:20px;margin:0 0 10px}
.cd-card h3::before{content:"";display:inline-block;width:10px;height:10px;background:var(--cd-oro);border-radius:2px;margin-right:10px;vertical-align:middle}

/* Proceso */
.cd-process{background:var(--cd-negro);color:#c9c9c9;position:relative}
.cd-process h2,.cd-process h3{color:#fff}
.cd-step{border-top:2px solid rgba(255,255,255,.12);padding-top:22px;height:100%}
.cd-step .cd-num{font-family:"Montserrat",sans-serif;font-size:44px;font-weight:800;color:var(--cd-oro);line-height:1}
.cd-step h3{font-size:18px;margin:12px 0 8px;text-transform:uppercase;letter-spacing:.06em}

/* Galería */
.cd-gallery{background:var(--cd-claro)}
.cd-gallery .wp-block-gallery{gap:10px!important}
.cd-gallery .wp-block-gallery figure.wp-block-image{border-radius:8px;overflow:hidden}
.cd-gallery .wp-block-gallery img{aspect-ratio:4/3;object-fit:cover;transition:transform .5s}
.cd-gallery .wp-block-gallery figure:hover img{transform:scale(1.06)}
.cd-gallery figcaption{background:linear-gradient(transparent,rgba(0,0,0,.75))!important;font-size:12px;letter-spacing:.06em;text-transform:uppercase}

/* Opiniones */
.cd-reviews{background:#fff}
.cd-quote{background:var(--cd-claro);border-radius:var(--cd-radio);padding:30px;height:100%;position:relative;border:0!important;margin:0}
.cd-quote::before{content:"\201C";font-family:Georgia,serif;font-size:80px;line-height:1;color:var(--cd-oro);position:absolute;top:8px;left:22px;opacity:.9}
.cd-quote p{padding-top:34px;font-style:italic;font-size:16px}
.cd-quote cite{font-style:normal;font-weight:700;color:var(--cd-negro);font-family:"Montserrat",sans-serif;font-size:14px}

/* Noticias */
.cd-news{background:var(--cd-claro)}
.cd-news .wp-block-latest-posts.is-grid li{background:#fff;border-radius:var(--cd-radio);overflow:hidden;box-shadow:0 4px 18px rgba(0,0,0,.05);padding-bottom:22px}
.cd-news .wp-block-latest-posts__featured-image img{aspect-ratio:16/9;object-fit:cover;width:100%}
.cd-news .wp-block-latest-posts__post-title{display:block;padding:18px 22px 6px;font-family:"Montserrat",sans-serif;font-weight:700;color:var(--cd-negro);font-size:18px}
.cd-news .wp-block-latest-posts__post-date,.cd-news .wp-block-latest-posts__post-excerpt{padding:0 22px}

/* Contacto */
.cd-contact{background:var(--cd-grafito);color:#c9c9c9}
.cd-contact h2,.cd-contact h3{color:#fff}
.cd-contact a{color:var(--cd-oro)}
.cd-contact ul{list-style:none;margin:0;padding:0} .cd-contact li{padding:10px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.cd-contact li strong{color:#fff;display:inline-block;min-width:110px}
.wpcf7 input:not([type=submit]):not([type=checkbox]),.wpcf7 textarea{width:100%;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.15);color:#fff;border-radius:8px;padding:12px 14px}
.wpcf7 input:focus,.wpcf7 textarea:focus{border-color:var(--cd-oro);outline:0}
.wpcf7 label{color:#ddd;font-size:14px;width:100%}

/* Pie */
.site-footer,.site-below-footer-wrap,.site-primary-footer-wrap{background:#111214!important;color:#9a9a9a}
.site-footer a{color:var(--cd-oro)}

/* Entradas del blog */
.single .entry-title{font-size:clamp(28px,3.4vw,40px)}
.single .entry-content img{border-radius:var(--cd-radio)}


/* ===== Ajustes Astra ===== */
/* full-width sections */
.entry-content>.cd-section,.entry-content>.wp-block-group.cd-section{max-width:none!important;width:100%!important;margin-left:0!important;margin-right:0!important;margin-top:0!important;margin-bottom:0!important;box-sizing:border-box}
.cd-eyebrow{display:block!important}
.site-header,#masthead,.ast-main-header-wrap{background:#18191b!important}
.cd-topbar{position:relative;z-index:100}
.site-title,.ast-site-title-wrap,.site-description{display:none!important}
.home #primary,.home .site-main,.home .ast-article-single,.home article.page{margin:0!important;padding:0!important;border:0!important;background:transparent!important}
.home .entry-content{margin:0}
.cd-hero .cd-eyebrow{color:var(--cd-oro)!important}
.cd-hero p{color:#ececec!important}
.cd-hero .wp-block-cover__inner-container{width:100%}
.cd-process p{color:#bdbdbd}
.cd-contact p,.cd-contact li{color:#cfcfcf}
.entry-content .cd-title{margin-top:0}
.wp-block-gallery.has-nested-images figure.wp-block-image figcaption{font-size:11px}
html{scroll-behavior:smooth} [id]{scroll-margin-top:90px}

@media (max-width:921px){.cd-section{padding:64px 18px}.cd-hero{min-height:72vh!important}}
/* móvil extra */
.ast-mobile-menu-trigger-minimal svg,.ast-button-wrap .menu-toggle svg,.menu-toggle .ast-mobile-svg{fill:var(--cd-oro)!important;color:var(--cd-oro)!important}
@media (max-width:600px){
  .cd-topbar .cd-wrap{gap:4px 14px;padding:6px 14px;font-size:12px}
  .cd-topbar span:nth-child(3){display:none}
  .cd-eyebrow{letter-spacing:.16em;font-size:11px}
  .cd-hero h1{font-size:34px}
  .cd-step .cd-num{font-size:34px}
  .cd-contact li strong{min-width:90px}
}

/* contraste */
.cd-process .cd-eyebrow,.cd-contact .cd-eyebrow{color:var(--cd-oro)!important}
.cd-process p{color:#d0d0d0}
.wp-block-latest-posts__post-date{color:#555}
