/*
Theme Name: SQ Hello Child
Theme URI: https://sebastianquerelos.com
Description: Child theme de Hello Elementor con header/footer puros en PHP. Zero dependencia de Elementor para el chrome del site. DiseÃ±o basado en design system .sq-v5 (Inter, DM Serif Display, JetBrains Mono + tokens cream/ink/gold).
Author: SebastiÃ¡n Querelos
Author URI: https://sebastianquerelos.com
Template: hello-elementor
Version: 1.8.0
Text Domain: sq-hello-child
*/

:root{
  --cream:#FAF9F5;
  --ink:#141413;
  --gold:#B8860B;
  --gold-soft:#D4A628;
  --line:rgba(20,20,19,.08);
  --line-s:rgba(20,20,19,.18);
  --mute:#6F6D67;
}

*{box-sizing:border-box}

html,body{background:var(--cream);color:var(--ink);font-family:'Inter',system-ui,-apple-system,Segoe UI,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;margin:0;padding:0}

/* En v7 el header global lo provee Elementor Theme Builder (sticky flotante).
 * La home no usaba padding-top global, asÃ­ que las pages migradas tampoco
 * lo necesitan. Si el fallback .sq-hdr se llegara a renderear, se reinstaura
 * vÃ­a clase body.sq-hdr-fallback.
 */
body.sq-hdr-fallback{padding-top:96px}
@media (max-width:960px){body.sq-hdr-fallback{padding-top:72px}}

a{color:inherit}
img{max-width:100%;height:auto;display:block}

/* ============ HEADER ============ */
.sq-hdr{position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(250,249,245,.92);backdrop-filter:saturate(160%) blur(12px);-webkit-backdrop-filter:saturate(160%) blur(12px);border-bottom:1px solid var(--line)}
.sq-hdr-inner{max-width:1280px;margin:0 auto;padding:20px 32px;display:flex;align-items:center;gap:24px}
.sq-hdr a.sq-hdr-brand{font-family:'DM Serif Display',Georgia,serif;font-size:22px;font-weight:400;letter-spacing:-.01em;text-decoration:none;color:var(--ink) !important;flex-shrink:0}
.sq-hdr a.sq-hdr-brand:hover{color:var(--gold) !important}
.sq-hdr-nav{display:flex;gap:28px;margin-left:auto;align-items:center}
.sq-hdr .sq-hdr-nav a{text-decoration:none;color:var(--ink) !important;font-size:14px;font-weight:500;letter-spacing:-.005em;transition:color .2s}
.sq-hdr .sq-hdr-nav a:hover{color:var(--gold) !important}
.sq-hdr .sq-hdr-nav a.current{color:var(--gold) !important}
.sq-hdr a.sq-hdr-cta{display:inline-flex;align-items:center;justify-content:center;background:var(--ink) !important;color:var(--cream) !important;padding:11px 22px;border-radius:999px;font-size:13px;font-weight:600;letter-spacing:.01em;text-decoration:none;transition:background .2s,transform .15s}
.sq-hdr a.sq-hdr-cta:hover{background:var(--gold) !important;color:var(--ink) !important;transform:translateY(-1px)}
.sq-hdr-toggle{display:none;background:none;border:0;padding:8px;cursor:pointer;font-size:22px;color:var(--ink);margin-left:auto}

@media (max-width:960px){
  body{padding-top:72px}
  .sq-hdr-inner{padding:16px 20px}
  .sq-hdr-toggle{display:block}
  .sq-hdr-nav,.sq-hdr-cta{display:none}
  .sq-hdr.is-open .sq-hdr-nav{display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;gap:0;padding:8px 20px 24px;background:var(--cream);border-bottom:1px solid var(--line);box-shadow:0 12px 24px rgba(0,0,0,.08)}
  .sq-hdr.is-open .sq-hdr-nav a{padding:14px 0;border-bottom:1px solid var(--line);font-size:16px}
  .sq-hdr.is-open a.sq-hdr-cta{display:inline-flex;margin:16px 20px 0;align-self:flex-start}
}

/* ============ CONTENT WRAPPER (para pages sin self-contained snapshot) ============ */
.sq-main{max-width:1120px;margin:0 auto;padding:48px 32px 96px}
.sq-main h1{font-family:'DM Serif Display',Georgia,serif;font-size:clamp(40px,5vw,72px);line-height:1.05;letter-spacing:-.02em;margin:0 0 24px}
.sq-main p{font-size:17px;line-height:1.65;color:#3a3832;max-width:72ch}

/* ============ FOOTER ============ */
.sq-foot{--f-cream:#FAF9F5;--f-ink:#141413;--f-gold:#B8860B;--f-gold-soft:#D4A628;--f-txt:#C9C7C1;--f-line:rgba(250,249,245,.12);--f-line-s:rgba(250,249,245,.2);--f-mute:#8a8782;background:var(--f-ink);color:var(--f-txt);font-family:'Inter',system-ui,-apple-system,Segoe UI,sans-serif;padding:72px 32px 40px;margin-top:120px}
.sq-foot-inner{max-width:1280px;margin:0 auto}
.sq-foot-top{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:48px;padding-bottom:56px;border-bottom:1px solid var(--f-line)}
.sq-foot-brand{display:flex;flex-direction:column;gap:18px}
.sq-foot-brand h2{font-family:'DM Serif Display',Georgia,serif;color:var(--f-cream);font-size:24px;font-weight:400;margin:0;letter-spacing:-.01em}
.sq-foot-brand p{margin:0;font-size:14px;line-height:1.55;max-width:36ch}
.sq-foot-cta{display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:14px 22px;background:var(--f-gold);color:var(--f-ink);text-decoration:none;border-radius:999px;font-weight:600;font-size:13px;letter-spacing:.01em;align-self:flex-start;transition:background .2s,transform .15s}
.sq-foot-cta:hover{background:var(--f-gold-soft);transform:translateY(-1px)}
.sq-foot-col h3{font-family:'JetBrains Mono',ui-monospace,Menlo,monospace;color:var(--f-mute);font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;margin:0 0 18px}
.sq-foot-col ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
.sq-foot-col a{color:var(--f-txt);text-decoration:none;font-size:14px;transition:color .2s}
.sq-foot-col a:hover{color:var(--f-cream)}
.sq-foot-col .sq-foot-arrow{color:var(--f-gold);font-weight:500;margin-top:6px;display:inline-block}
.sq-foot-col .sq-foot-arrow:hover{color:var(--f-gold-soft)}
.sq-foot-work-item{display:flex;flex-direction:column;gap:2px}
.sq-foot-work-item span{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:10px;letter-spacing:.1em;color:var(--f-mute);text-transform:uppercase}
.sq-foot-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:32px;flex-wrap:wrap}
.sq-foot-copy{font-size:12px;color:var(--f-mute);letter-spacing:.02em}
.sq-foot-copy strong{color:var(--f-cream);font-weight:500}
.sq-foot-made{font-family:'DM Serif Display',Georgia,serif;font-style:italic;font-size:13px;color:var(--f-mute)}
.sq-foot-sitemap{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:11px;color:var(--f-mute);text-decoration:none;letter-spacing:.08em;text-transform:uppercase}
.sq-foot-sitemap:hover{color:var(--f-txt)}

@media (max-width:960px){
  .sq-foot{padding:56px 20px 32px;margin-top:72px}
  .sq-foot-top{grid-template-columns:1fr;gap:40px}
  .sq-foot-bottom{flex-direction:column;align-items:flex-start;gap:12px}
}
