/*
Theme Name: Exclusiva Colchões
Theme URI: https://www.attackads.com.br/
Author: Attack Ads
Author URI: https://www.attackads.com.br/
Description: Tema WordPress personalizado para a Exclusiva Colchões: landing page one-page com hero, diferenciais, produto em destaque, galeria de fotos, marcas parceiras, seção de tradição, mapa e contato. Textos, telefone, endereço e imagens são editáveis pelo Personalizar (Aparência > Personalizar).
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Tested up to: 6.6
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: exclusiva-colchoes
*/

@font-face{
  font-family:'Anton';
  src:url('assets/fonts/Anton-Regular.ttf') format('truetype');
  font-weight:400;font-style:normal;font-display:swap;
}
@font-face{
  font-family:'Fraunces';
  src:url('assets/fonts/Fraunces.ttf') format('truetype-variations');
  font-weight:300 700;font-style:normal;font-display:swap;
}
@font-face{
  font-family:'Inter';
  src:url('assets/fonts/Inter.ttf') format('truetype-variations');
  font-weight:400 700;font-style:normal;font-display:swap;
}
  :root{
    --gold: #DBA328;
    --gold-deep: #C08E1D;
    --espresso: #331B11;
    --espresso-soft: #4A2C1C;
    --parchment: #FFFFFF;
    --offwhite: #F7F4EE;
    --parchment-deep: #EFEAE0;
    --clay: #A8471F;
    --clay-deep: #8C3A19;
    --slate: #33505A;
    --paper-line: rgba(51,27,17,0.13);
    --shadow: 0 18px 40px -18px rgba(51,27,17,0.28);
  }

  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    margin:0;
    background:var(--parchment);
    color:var(--espresso);
    font-family:'Fraunces', serif;
    font-size:17px;
    line-height:1.55;
    -webkit-font-smoothing:antialiased;
  }
  img{max-width:100%;display:block;}
  a{color:inherit;}
  .wrap{max-width:1180px;margin:0 auto;padding:0 32px;}
  .eyebrow{
    font-family:'Inter',sans-serif;
    font-weight:700;
    font-size:12.5px;
    letter-spacing:0.16em;
    text-transform:uppercase;
    color:var(--clay-deep);
  }
  h1,h2,h3{
    font-family:'Anton', sans-serif;
    font-weight:400;
    text-transform:uppercase;
    letter-spacing:0.01em;
    line-height:1.15;
    margin:0;
    color:var(--espresso);
  }
  .btn{
    display:inline-flex;
    align-items:center;
    gap:10px;
    font-family:'Inter',sans-serif;
    font-weight:700;
    font-size:15px;
    letter-spacing:0.01em;
    padding:15px 26px;
    border-radius:999px;
    text-decoration:none;
    border:2px solid transparent;
    cursor:pointer;
    transition:transform .18s ease, box-shadow .18s ease, background-color .18s ease;
    white-space:nowrap;
  }
  .btn:hover{transform:translateY(-2px);}
  .btn-primary{
    background:var(--espresso);
    color:var(--gold);
    box-shadow:var(--shadow);
  }
  .btn-primary:hover{background:#43261A;}
  .btn-whatsapp{
    background:#25D366;
    color:#fff;
    box-shadow:0 14px 30px -14px rgba(37,211,102,0.55);
  }
  .btn-whatsapp:hover{background:#1FBE5D;}
  .btn-outline{
    background:transparent;
    border-color:var(--espresso);
    color:var(--espresso);
  }
  .btn-outline:hover{background:var(--espresso);color:var(--gold);}
  .btn svg{width:18px;height:18px;flex-shrink:0;}

  /* ---------- NAV ---------- */
  header{
    position:sticky;top:0;z-index:50;
    background:rgba(255,255,255,0.92);
    backdrop-filter:blur(8px);
    border-bottom:1px solid var(--paper-line);
  }
  .nav{
    display:flex;align-items:center;justify-content:space-between;
    padding:14px 32px;
    max-width:1180px;margin:0 auto;
  }
  .nav-brand{display:flex;align-items:center;gap:11px;text-decoration:none;}
  .nav-logo{
    height:46px;width:46px;border-radius:50%;object-fit:cover;
    box-shadow:0 0 0 2px var(--gold);
  }
  .nav-brand-text{
    font-family:'Anton',sans-serif;font-size:16px;line-height:1.15;
    color:var(--espresso);letter-spacing:.01em;
  }
  .nav-brand-text em{
    font-style:normal;font-family:'Fraunces',serif;font-weight:500;font-size:13px;
    color:var(--gold-deep);text-transform:uppercase;letter-spacing:.06em;
  }
  @media (max-width:420px){
    .nav-brand-text{display:none;}
  }
  .nav-links{
    display:flex;gap:30px;align-items:center;
    font-family:'Inter',sans-serif;font-weight:600;font-size:14.5px;
    list-style:none;margin:0;padding:0;
  }
  .nav-links a{text-decoration:none;color:var(--espresso-soft);border-bottom:2px solid transparent;padding-bottom:3px;transition:border-color .15s;}
  .nav-links a:hover{border-color:var(--clay);}
  .nav-cta{display:flex;align-items:center;gap:14px;}
  .nav-phone{
    font-family:'Inter',sans-serif;font-weight:700;font-size:14px;
    display:flex;align-items:center;gap:6px;text-decoration:none;color:var(--espresso);
  }
  .nav-phone svg{width:16px;height:16px;}
  @media (max-width:1040px){
    .nav-links, .nav-phone{display:none;}
  }

  /* ---------- HERO ---------- */
  .hero{
    position:relative;
    padding:64px 0 0;
    background-color:var(--parchment);
    background-image:
      repeating-linear-gradient(45deg, rgba(51,27,17,0.04) 0, rgba(51,27,17,0.04) 1px, transparent 1px, transparent 46px),
      repeating-linear-gradient(-45deg, rgba(51,27,17,0.04) 0, rgba(51,27,17,0.04) 1px, transparent 1px, transparent 46px);
  }
  .hero-inner{position:relative;}
  .hero-grid{
    display:grid;
    grid-template-columns:1.05fr 0.95fr;
    gap:56px;
    align-items:start;
  }
  .hero h1{font-size:clamp(38px,4.6vw,54px);margin-top:16px;}
  .hero h1 em{
    font-style:normal;color:var(--clay);
  }
  .hero-sub{
    font-family:'Fraunces',serif;
    font-size:18px;
    color:var(--espresso-soft);
    max-width:44ch;
    margin:20px 0 30px;
  }
  .hero-ctas{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:20px;}

  .hero-art{position:relative;height:430px;}
  .hero-photo{
    width:100%;height:100%;object-fit:cover;
    border-radius:24px;
    box-shadow:var(--shadow);
  }

  .hero-trust-card{
    position:relative;
    margin-top:-28px;
    max-width:760px;
    background:#fff;
    border-radius:18px;
    box-shadow:0 24px 48px -20px rgba(51,27,17,0.28);
    padding:28px 34px;
    display:flex;
    z-index:6;
  }
  .trust-item{
    display:flex;align-items:flex-start;gap:12px;
    flex:1;padding:0 20px;
    border-left:1px solid var(--paper-line);
  }
  .trust-item:first-child{border-left:none;padding-left:0;}
  .trust-item svg{width:26px;height:26px;color:var(--clay);flex-shrink:0;margin-top:2px;}
  .trust-title{font-family:'Inter',sans-serif;font-weight:700;font-size:14.5px;color:var(--espresso);}
  .trust-sub{font-family:'Inter',sans-serif;font-size:12.5px;color:var(--espresso-soft);margin-top:3px;}
  @media (max-width:980px){
    .hero-trust-card{flex-direction:column;gap:18px;padding:24px;margin-top:16px;}
    .trust-item{border-left:none;padding-left:0;border-top:1px solid var(--paper-line);padding-top:16px;}
    .trust-item:first-child{border-top:none;padding-top:0;}
  }

  .hero-infobar{
    background:var(--espresso);
    margin-top:56px;
    padding:16px 0;
  }
  .hero-infobar-inner{
    display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;
    font-family:'Inter',sans-serif;font-size:13px;font-weight:600;color:#E7D9BD;
    text-align:center;
  }
  .hero-infobar-inner span{display:flex;align-items:center;gap:7px;}
  .hero-infobar-inner svg{width:15px;height:15px;color:var(--gold);flex-shrink:0;}
  .hero-infobar-inner .divider{color:rgba(231,217,189,0.35);}
  @media (max-width:640px){ .hero-infobar-inner{flex-direction:column;gap:8px;} .hero-infobar-inner .divider{display:none;} }

  .tag-badge{
    position:absolute;
    top:18px;right:18px;
    background:var(--espresso);
    border-radius:14px;
    padding:12px 18px;
    box-shadow:0 12px 28px -10px rgba(0,0,0,0.45);
    display:flex;align-items:center;gap:12px;
  }
  .tag-badge .num{
    font-family:'Anton',sans-serif;font-size:30px;color:var(--gold);line-height:1;
  }
  .tag-badge .cap{
    font-family:'Inter',sans-serif;font-size:10px;font-weight:700;letter-spacing:.05em;
    text-transform:uppercase;color:#E7D9BD;line-height:1.3;max-width:88px;
  }

  /* ---------- SECTION HEADERS ---------- */
  section{padding:86px 0;}
  .sec-head{max-width:640px;margin-bottom:48px;}
  .sec-head h2{font-size:clamp(30px,4vw,44px);margin-top:10px;}
  .sec-head p{color:var(--espresso-soft);font-size:17px;margin-top:14px;}

  /* ---------- DIFERENCIAIS ---------- */
  .diff-grid{
    display:grid;grid-template-columns:repeat(4,1fr);gap:20px;
  }
  .diff-card{
    background:#fff;
    border:1px solid var(--paper-line);
    border-radius:16px;
    padding:28px 22px;
    position:relative;
  }
  .diff-icon{
    width:48px;height:48px;border-radius:12px;
    background:var(--gold);
    display:flex;align-items:center;justify-content:center;
    margin-bottom:18px;
  }
  .diff-icon svg{width:24px;height:24px;color:var(--espresso);}
  .diff-card h3{
    font-family:'Inter',sans-serif;font-weight:700;text-transform:none;
    font-size:17px;letter-spacing:0;margin-bottom:8px;
  }
  .diff-card p{font-size:14.5px;color:var(--espresso-soft);margin:0;}
  @media (max-width:980px){ .diff-grid{grid-template-columns:repeat(2,1fr);} }
  @media (max-width:560px){ .diff-grid{grid-template-columns:1fr;} }

  /* ---------- PRODUTO ---------- */
  .product{
    background:var(--espresso);
    color:var(--parchment);
    border-radius:28px;
    padding:64px;
    display:grid;grid-template-columns:0.9fr 1.1fr;gap:56px;align-items:center;
  }
  .product .eyebrow{color:var(--gold);}
  .product h2{color:#fff;font-size:clamp(30px,3.6vw,46px);margin-top:10px;}
  .product p{color:#E7D9BD;font-size:16.5px;max-width:48ch;margin-top:16px;}
  .product-visual{position:relative;height:380px;border-radius:20px;overflow:hidden;box-shadow:0 20px 44px -16px rgba(0,0,0,0.5);}
  .product-photo{width:100%;height:100%;object-fit:cover;display:block;}
  .product-ctas{margin-top:30px;display:flex;gap:14px;flex-wrap:wrap;}
  .product .btn-outline{border-color:var(--gold);color:var(--gold);}
  .product .btn-outline:hover{background:var(--gold);color:var(--espresso);}

  /* ---------- GALERIA ---------- */
  .gallery-tabs{
    display:inline-flex;gap:6px;background:var(--offwhite);
    padding:6px;border-radius:999px;margin-bottom:32px;
  }
  .gallery-tab{
    font-family:'Inter',sans-serif;font-weight:700;font-size:13.5px;
    border:none;background:transparent;color:var(--espresso-soft);
    padding:11px 22px;border-radius:999px;cursor:pointer;
    transition:background-color .15s, color .15s;
  }
  .gallery-tab.active{background:var(--espresso);color:var(--gold);}
  .gallery-panel{display:none;}
  .gallery-panel.active{display:block;}
  .gallery-grid{
    display:grid;grid-template-columns:repeat(auto-fill, minmax(210px,1fr));gap:16px;
  }
  .gallery-item{
    aspect-ratio:1/1;border-radius:16px;overflow:hidden;
  }
  .gallery-item.photo img{width:100%;height:100%;object-fit:cover;display:block;}
  .gallery-item.empty{
    background:var(--offwhite);border:1px solid var(--paper-line);
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;
  }
  .gallery-item.empty svg{width:28px;height:28px;color:#C9BCA3;}
  .gallery-item.empty span{font-family:'Inter',sans-serif;font-size:12px;font-weight:600;color:#B4A896;}
  .gallery-note{font-family:'Inter',sans-serif;font-size:12px;color:#B4A896;margin-top:14px;}
  @media (max-width:640px){ .gallery-grid{grid-template-columns:repeat(2,1fr);} }

  /* ---------- MARCAS ---------- */
  .marcas-grid{
    display:grid;grid-template-columns:repeat(5,1fr);gap:16px;
  }
  .marca-card{
    height:112px;
    border-radius:14px;
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    text-align:center;
    background:#fff;
    border:1px solid var(--paper-line);
    position:relative;
  }
  .marca-card.logo{padding:18px;}
  .marca-card.logo img{max-width:100%;max-height:100%;object-fit:contain;}
  .featured-logo{border-color:var(--gold);border-width:1.5px;}
  .featured-badge{
    position:absolute;top:-11px;left:50%;transform:translateX(-50%);
    background:var(--gold);color:var(--espresso);
    font-family:'Inter',sans-serif;font-size:10px;font-weight:700;letter-spacing:.04em;
    text-transform:uppercase;padding:4px 12px;border-radius:999px;
    box-shadow:0 4px 10px -4px rgba(0,0,0,0.3);
  }
  .marca-card .marca-name{
    font-family:'Anton',sans-serif;font-size:19px;letter-spacing:.01em;
    text-transform:uppercase;color:var(--espresso);
  }
  @media (max-width:980px){ .marcas-grid{grid-template-columns:repeat(3,1fr);} }
  @media (max-width:560px){ .marcas-grid{grid-template-columns:repeat(2,1fr);} }

  /* ---------- TRADIÇÃO / STATS ---------- */
  .trad-head{max-width:820px;margin:0 auto 52px;text-align:center;}
  .trad-eyebrow{
    display:flex;align-items:center;justify-content:center;gap:16px;
    font-family:'Inter',sans-serif;font-weight:700;font-size:12.5px;letter-spacing:.18em;
    text-transform:uppercase;color:var(--gold-deep);margin-bottom:20px;
  }
  .trad-eyebrow .line{width:38px;height:1px;background:var(--gold-deep);opacity:.5;}
  .trad-title{
    font-family:'Fraunces',serif;font-weight:500;font-size:clamp(26px,3vw,38px);
    color:var(--espresso);line-height:1.3;
  }
  .trad-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
  .trad-card{
    background:#fff;border-radius:20px;padding:44px 28px;text-align:center;
    box-shadow:0 22px 44px -28px rgba(51,27,17,0.3);
  }
  .trad-icon{color:var(--gold);width:50px;height:50px;margin:0 auto 20px;}
  .trad-icon svg{width:100%;height:100%;}
  .trad-line{width:36px;height:1px;background:var(--paper-line);margin:0 auto 18px;}
  .trad-num{font-family:'Fraunces',serif;font-weight:600;font-size:52px;color:var(--espresso);line-height:1;margin-bottom:10px;}
  .trad-num.small{font-size:25px;line-height:1.25;text-transform:uppercase;letter-spacing:.02em;margin-bottom:14px;}
  .trad-label{font-family:'Fraunces',serif;font-weight:600;font-size:19px;color:var(--gold-deep);margin-bottom:18px;}
  .trad-desc{font-family:'Inter',sans-serif;font-size:14px;color:var(--espresso-soft);line-height:1.65;max-width:26ch;margin:0 auto;}
  @media (max-width:860px){ .trad-grid{grid-template-columns:1fr;} }

  /* ---------- CONTATO ---------- */
  .contact{
    background:var(--gold);
    border-radius:28px;
    padding:64px;
    display:grid;grid-template-columns:1.1fr 0.9fr;gap:50px;
  }
  .contact h2{font-size:clamp(30px,4vw,46px);}
  .contact p{color:var(--espresso-soft);margin-top:14px;max-width:44ch;}
  .contact-ctas{margin-top:28px;display:flex;gap:14px;flex-wrap:wrap;}
  .contact .btn-outline{border-color:var(--espresso);}
  .info-card{
    background:var(--parchment);border-radius:18px;padding:30px;
    font-family:'Inter',sans-serif;
  }
  .info-row{display:flex;gap:14px;padding:14px 0;border-bottom:1px solid var(--paper-line);}
  .info-row:last-child{border-bottom:none;}
  .info-row svg{width:19px;height:19px;flex-shrink:0;color:var(--clay);margin-top:2px;}
  .info-row .lbl{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--espresso-soft);}
  .info-row .val{font-size:15px;font-weight:600;margin-top:2px;}
  @media (max-width:900px){ .contact,.product{grid-template-columns:1fr;padding:40px 28px;} .product-visual{order:-1;height:260px;} }

  /* ---------- MAPA ---------- */
  .map-card{
    display:block;
    border-radius:22px;overflow:hidden;
    border:1px solid var(--paper-line);
    box-shadow:0 20px 44px -28px rgba(51,27,17,0.3);
    text-decoration:none;
    transition:transform .18s ease, box-shadow .18s ease;
  }
  .map-card:hover{transform:translateY(-3px);box-shadow:0 28px 54px -28px rgba(51,27,17,0.4);}
  .map-visual{
    position:relative;height:260px;
    background:var(--offwhite);
    overflow:hidden;
    display:flex;align-items:center;justify-content:center;
  }
  .map-lines{position:absolute;inset:0;width:100%;height:100%;color:var(--paper-line);}
  .map-pin{
    position:relative;z-index:1;
    width:64px;height:64px;border-radius:50% 50% 50% 0;
    background:var(--clay);
    transform:rotate(-45deg);
    display:flex;align-items:center;justify-content:center;
    box-shadow:0 14px 26px -10px rgba(168,71,31,0.55);
  }
  .map-pin svg{width:30px;height:30px;color:#fff;transform:rotate(45deg);}
  .map-card-info{
    background:#fff;
    padding:26px 30px;
    display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;
  }
  .map-card-title{font-family:'Anton',sans-serif;font-size:19px;color:var(--espresso);letter-spacing:.01em;}
  .map-card-addr{font-family:'Inter',sans-serif;font-size:13.5px;color:var(--espresso-soft);margin-top:4px;}
  .map-card-btn{pointer-events:none;}
  @media (max-width:640px){
    .map-visual{height:200px;}
    .map-card-info{padding:22px;}
  }

  /* ---------- FOOTER ---------- */
  footer{padding:56px 0 40px;border-top:1px solid var(--paper-line);margin-top:20px;}
  .footer-grid{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:24px;}
  .footer-brand{display:flex;align-items:center;gap:12px;margin-bottom:14px;}
  .footer-logo{
    height:44px;width:44px;border-radius:50%;object-fit:cover;
    box-shadow:0 0 0 2px var(--gold);
  }
  .footer-brand-text{font-family:'Anton',sans-serif;font-size:17px;color:var(--espresso);}
  .footer-meta{font-family:'Inter',sans-serif;font-size:13px;color:var(--espresso-soft);}
  .footer-social{display:flex;gap:14px;}
  .footer-social a{
    width:38px;height:38px;border-radius:50%;background:var(--espresso);color:var(--gold);
    display:flex;align-items:center;justify-content:center;text-decoration:none;
  }
  .footer-social svg{width:17px;height:17px;}
  .footer-note{
    font-family:'Inter',sans-serif;font-size:11.5px;color:#9A8A72;margin-top:26px;line-height:1.6;
  }
  .footer-credit-link{color:var(--gold-deep);font-weight:600;text-decoration:none;}
  .footer-credit-link:hover{text-decoration:underline;}

  /* ---------- BOTÃO FLUTUANTE WHATSAPP ---------- */
  .wa-float{
    position:fixed;
    bottom:24px;right:24px;
    width:60px;height:60px;
    background:#25D366;
    border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    box-shadow:0 10px 26px -6px rgba(37,211,102,0.6);
    z-index:80;
    animation:wa-pulse 2.6s ease-in-out infinite;
    transition:transform .18s ease;
  }
  .wa-float:hover{transform:scale(1.07);}
  .wa-float svg{width:30px;height:30px;color:#fff;}
  @keyframes wa-pulse{
    0%, 100%{box-shadow:0 10px 26px -6px rgba(37,211,102,0.6), 0 0 0 0 rgba(37,211,102,0.45);}
    50%{box-shadow:0 10px 26px -6px rgba(37,211,102,0.6), 0 0 0 10px rgba(37,211,102,0);}
  }
  @media (max-width:640px){
    .wa-float{width:54px;height:54px;bottom:18px;right:18px;}
    .wa-float svg{width:27px;height:27px;}
  }
  @media (prefers-reduced-motion: reduce){
    .wa-float{animation:none;}
  }

  @media (max-width:980px){
    .hero-grid{grid-template-columns:1fr;}
    .hero-art{order:-1;height:320px;margin-bottom:10px;}
  }
  @media (max-width:640px){
    .wrap{padding:0 20px;}
    .nav{padding:12px 20px;}
    section{padding:60px 0;}
    .product,.contact{padding:32px 22px;border-radius:20px;}
  }
