:root{
    color-scheme: light only;
    --paper:#F7F3EC;
    --paper-2:#F1EAE0;
    --ink:#2B2420;
    --ink-soft:#6b5d52;
    --epiderme:#C9A227;   /* dourado - detalhes e destaques */
    --derme:#A9862A;      /* dourado mais profundo */
    --derme-text:#7D6119; /* dourado escurecido - uso em texto, contraste AA */
    --subcutaneo:#4B5D53; /* verde da marca - cor principal */
    --verde-escuro:#333F38;
    --line:#DCD6C7;
    --white:#FFFDFA;
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  html{scroll-behavior:smooth; background:#F7F3EC;}
  section[id], .service-card[id]{scroll-margin-top:96px;}
  body{
    background:var(--paper) !important;
    color:var(--ink) !important;
    font-family:'Source Sans 3', sans-serif;
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
  }
  /* Bloqueia qualquer tentativa do sistema/app de aplicar modo escuro sobre o site */
  @media (prefers-color-scheme: dark){
    :root{
      --paper:#F7F3EC !important;
      --paper-2:#F1EAE0 !important;
      --ink:#2B2420 !important;
      --ink-soft:#6b5d52 !important;
      --line:#DCD6C7 !important;
      --white:#FFFDFA !important;
    }
    html, body{background:#F7F3EC !important; color:#2B2420 !important;}
    h1,h2,h3,p,span,a,li,td{color:inherit;}
  }
  h1,h2,h3,.display{
    font-family:'Fraunces', serif;
    font-weight:450;
    letter-spacing:-0.01em;
    color:var(--ink);
  }
  a{color:inherit; text-decoration:none;}
  img{max-width:100%; display:block;}
  .wrap{max-width:1120px; margin:0 auto; padding:0 28px;}
  .eyebrow{
    font-size:12.5px; text-transform:uppercase; letter-spacing:.14em;
    color:var(--subcutaneo); font-weight:600; margin-bottom:14px; display:block;
  }

  /* ---------- header ---------- */
  header{
    position:sticky; top:0; z-index:50;
    background:rgba(247,243,236,.92); backdrop-filter:blur(6px);
    border-bottom:1px solid var(--line);
  }
  .nav{display:flex; align-items:center; justify-content:space-between; padding:18px 0;}
  .logo{font-family:'Fraunces',serif; font-size:22px; font-weight:600; display:flex; align-items:center; gap:12px;}
  .logo span{color:var(--derme-text);}
  .logo img{height:42px; width:auto; border-radius:6px; display:block;}
  .nav-links{display:flex; gap:20px; font-size:14px; font-weight:500; align-items:center;}
  .has-submenu{position:relative;}
  .submenu-trigger{display:flex; align-items:center; gap:4px;}
  .submenu-trigger .caret{font-size:10px; transition:transform .2s ease;}
  .has-submenu.open .submenu-trigger .caret{transform:rotate(180deg);}
  .submenu{
    position:absolute; top:100%; left:0; min-width:220px; background:var(--white);
    border:1px solid var(--line); border-radius:12px; box-shadow:0 12px 28px rgba(0,0,0,.1);
    padding:8px; display:none; flex-direction:column; gap:2px; z-index:70;
  }
  .has-submenu.open .submenu{display:flex;}
  .submenu a{padding:10px 14px; border-radius:8px; font-size:13.5px; white-space:nowrap;}
  .submenu a:hover{background:var(--paper-2); color:var(--derme-text);}
  @media (min-width:861px){
    .has-submenu:hover .submenu{display:flex;}
    .has-submenu:hover .submenu-trigger .caret{transform:rotate(180deg);}
  }
  .nav-links a{position:relative; padding-bottom:4px; transition:color .2s;}
  .nav-links a:hover{color:var(--derme-text);}
  .btn{
    display:inline-block; background:var(--subcutaneo); color:var(--white);
    padding:12px 24px; border-radius:100px; font-weight:600; font-size:14.5px;
    transition:transform .18s ease, background .2s ease; border:none; cursor:pointer;
  }
  .btn:hover{background:var(--verde-escuro); transform:translateY(-2px);}
  .btn-outline{
    background:transparent; border:1.5px solid var(--ink); color:var(--ink);
  }
  .btn-outline:hover{background:var(--ink); color:var(--white);}
  .menu-toggle{
    display:none; flex-direction:column; justify-content:center; gap:5px;
    width:38px; height:38px; background:none; border:none; cursor:pointer; padding:0;
  }
  .menu-toggle span{display:block; width:100%; height:2px; background:var(--ink); border-radius:2px; transition:transform .2s ease, opacity .2s ease;}
  .menu-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  .menu-toggle.open span:nth-child(2){opacity:0;}
  .menu-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

  /* ---------- hero ---------- */
  .hero{
    padding:88px 0 70px;
    display:grid; grid-template-columns:1.1fr .9fr; gap:56px; align-items:center;
  }
  .hero h1{font-size:clamp(36px,5vw,58px); line-height:1.06; margin-bottom:22px;}
  .hero p.lead{font-size:18px; color:var(--ink-soft); max-width:480px; margin-bottom:32px;}
  .hero-ctas{display:flex; gap:14px; flex-wrap:wrap;}
  .hero-portrait{
    position:relative; aspect-ratio:4/5; border-radius:18px; overflow:hidden;
    background:linear-gradient(160deg, var(--epiderme) 0%, var(--derme) 60%, var(--subcutaneo) 100%);
    display:flex; align-items:center; justify-content:center; color:#fff;
    text-align:center; padding:24px;
  }
  .hero-portrait .ph-label{font-family:'Fraunces',serif; font-size:16px; opacity:.92; line-height:1.5;}

  /* ---------- skin layer divider (elemento assinatura) ---------- */
  .layers-divider{width:100%; display:block; height:70px; margin-top:-2px;}

  /* ---------- sobre / quem sou eu ---------- */
  .about{background:var(--white); padding:90px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line);}
  .about-grid{display:grid; grid-template-columns:.8fr 1.2fr; gap:64px; align-items:start;}
  .about-photo{
    aspect-ratio:3/4; border-radius:14px; background:var(--paper-2);
    border:1px dashed #c9b9a3; display:flex; align-items:center; justify-content:center;
    text-align:center; padding:20px; color:var(--ink-soft); font-size:14px;
  }
  .about h2{font-size:34px; margin-bottom:18px;}
  .about p{color:var(--ink-soft); margin-bottom:16px; font-size:16.5px; max-width:560px;}
  .credentials{display:flex; gap:28px; margin-top:28px; flex-wrap:wrap;}
  .society-note{font-size:12.5px; color:var(--ink-soft); font-style:italic; margin-top:16px;}
  .credential{border-left:2px solid var(--derme); padding-left:14px;}
  .credential .num{font-family:'Fraunces',serif; font-size:26px; color:var(--subcutaneo);}
  .credential .lbl{font-size:13px; color:var(--ink-soft);}

  /* ---------- serviços / tratamentos ---------- */
  .services{padding:90px 0;}
  .section-head{max-width:600px; margin-bottom:50px;}
  .section-head h2{font-size:36px;}
  .section-head p{color:var(--ink-soft); font-size:16.5px; margin-top:12px;}
  .service-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:26px;}
  .service-card{
    background:var(--white); border:1px solid var(--line); border-radius:16px;
    overflow:hidden; transition:transform .2s ease, box-shadow .2s ease;
  }
  .service-card:hover{transform:translateY(-5px); box-shadow:0 16px 32px rgba(43,36,32,.08);}
  .service-img{
    aspect-ratio:16/11; display:flex; align-items:center; justify-content:center;
    color:#fff; font-family:'Fraunces',serif; font-size:15px; text-align:center; padding:16px;
  }
  .service-body{padding:20px 22px 24px;}
  .service-body h3{font-size:19px; margin-bottom:8px;}
  .service-body p{font-size:14.5px; color:var(--ink-soft);}

  /* ---------- carrossel de fotos (dentro de service-img) ---------- */
  .procedure-carousel{position:relative; width:100%; height:100%;}
  .procedure-carousel .carousel-slide{
    position:absolute; inset:0; opacity:0; visibility:hidden;
    transition:opacity .35s ease;
  }
  .procedure-carousel .carousel-slide.is-active{opacity:1; visibility:visible;}
  .procedure-carousel .carousel-slide img{width:100%; height:100%; object-fit:cover;}
  .procedure-carousel .carousel-arrow{
    position:absolute; top:50%; transform:translateY(-50%); z-index:2;
    width:36px; height:36px; border-radius:50%; border:none; cursor:pointer;
    background:rgba(43,36,32,.55); color:#fff; display:flex; align-items:center; justify-content:center;
    transition:background .2s ease;
  }
  .procedure-carousel .carousel-arrow:hover{background:rgba(43,36,32,.8);}
  .procedure-carousel .carousel-arrow.prev{left:10px;}
  .procedure-carousel .carousel-arrow.next{right:10px;}
  .procedure-carousel .carousel-dots{
    position:absolute; bottom:10px; left:0; right:0; z-index:2;
    display:flex; justify-content:center; gap:6px;
  }
  .procedure-carousel .carousel-dots button{
    width:7px; height:7px; border-radius:50%; border:none; padding:0;
    background:rgba(255,255,255,.55); cursor:pointer;
  }
  .procedure-carousel .carousel-dots button.is-active{background:#fff;}
  .procedure-carousel.single-slide .carousel-arrow,
  .procedure-carousel.single-slide .carousel-dots{display:none;}

  /* ---------- equipamentos ---------- */
  .equip-grid{display:grid; grid-template-columns:repeat(auto-fit, minmax(270px, 1fr)); gap:26px;}
  .equip-grid .service-img{background:#fff; padding:18px;}
  .equip-grid .service-img img{width:100%; height:100%; object-fit:contain;}
  .gallery{border-top:1px solid var(--line); margin-top:2px;}
  .gallery summary{
    list-style:none; cursor:pointer; padding:14px 22px; font-size:13.5px; font-weight:600;
    color:var(--subcutaneo); display:flex; align-items:center; gap:8px; user-select:none;
  }
  .gallery summary::-webkit-details-marker{display:none;}
  .gallery summary::before{content:"▸"; transition:transform .2s ease;}
  .gallery[open] summary::before{transform:rotate(90deg);}
  .gallery-body{padding:0 22px 20px;}
  .res-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:8px; margin-bottom:10px;}
  .res-item{aspect-ratio:1/1; border-radius:8px; overflow:hidden; background:var(--paper-2); border:1px solid var(--line);}
  .res-item img, .res-item video{width:100%; height:100%; object-fit:cover;}
  .gallery-note{font-size:12px; color:var(--ink-soft); line-height:1.5;}
  .gallery-note code{background:var(--paper-2); padding:1px 5px; border-radius:4px;}


  /* ---------- horários / agendamento ---------- */
  /* ---------- antes e depois ---------- */
  .results{padding:90px 0; border-top:1px solid var(--line);}
  .results-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:28px;}
  .result-pair h3{font-size:18px; margin-top:14px; text-align:center;}
  .result-imgs{display:grid; grid-template-columns:1fr 1fr; gap:4px; border-radius:14px; overflow:hidden;}
  .result-img{position:relative; aspect-ratio:3/4; background:var(--paper-2);}
  .result-img img{width:100%; height:100%; object-fit:cover;}
  .result-img span{
    position:absolute; bottom:8px; left:8px; background:rgba(0,0,0,.55); color:#fff;
    font-size:11px; padding:3px 9px; border-radius:100px; text-transform:uppercase; letter-spacing:.05em;
  }

  /* ---------- depoimentos ---------- */
  .testimonials{background:var(--paper-2); padding:90px 0; border-top:1px solid var(--line);}
  .google-badge{
    display:inline-flex; align-items:center; gap:10px; margin-top:18px;
    background:var(--white); border:1px solid var(--line); border-radius:100px;
    padding:10px 20px 10px 14px; transition:box-shadow .2s ease, transform .2s ease;
  }
  .google-badge:hover{box-shadow:0 6px 16px rgba(0,0,0,.08); transform:translateY(-1px);}
  .google-badge-text{font-size:14px; color:var(--ink); white-space:nowrap;}
  .google-badge-text strong{font-family:'Fraunces',serif; font-size:16px;}
  .stars-mini{color:var(--derme-text); letter-spacing:1px; font-size:13px;}
  .testimonial-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:26px;}
  .testimonial-card{background:var(--white); border:1px solid var(--line); border-radius:16px; padding:28px;}
  .testimonial-card .stars{color:var(--derme-text); font-size:16px; margin-bottom:14px; letter-spacing:2px;}
  .testimonial-card p{font-size:15px; color:var(--ink); line-height:1.6; margin-bottom:16px; font-style:italic;}
  .testimonial-name{font-size:13.5px; color:var(--ink-soft); font-weight:600;}

  .schedule{background:var(--subcutaneo); color:var(--white); padding:90px 0;}
  .schedule .eyebrow{color:#cfe0d5;}
  .schedule-grid{display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:start;}
  .schedule h2{color:var(--white); font-size:34px; margin-bottom:18px;}
  .schedule p{color:#d8e3dc; font-size:16px; margin-bottom:26px; max-width:440px;}
  .hours-table{width:100%; border-collapse:collapse; font-size:15px;}
  .open-status{
    display:inline-flex; align-items:center; gap:8px; background:rgba(255,255,255,.1);
    border:1px solid rgba(255,255,255,.25); padding:8px 16px; border-radius:100px;
    font-size:13.5px; font-weight:600; margin:16px 0 20px;
  }
  .open-status .dot{width:9px; height:9px; border-radius:50%; background:#8fa89c; flex-shrink:0;}
  .open-status.is-open .dot{background:#6FCF97; box-shadow:0 0 0 3px rgba(111,207,151,.25);}
  .open-status.is-closed .dot{background:#E08A7D; box-shadow:0 0 0 3px rgba(224,138,125,.2);}
  .hours-table td{padding:12px 0; border-bottom:1px solid rgba(255,255,255,.18);}
  .hours-table td:last-child{text-align:right; color:#e9c9c1;}
  .booking-card{
    background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.2);
    border-radius:16px; padding:32px;
  }
  .booking-card h3{color:#fff; font-size:20px; margin-bottom:10px;}
  .booking-card p{color:#d8e3dc; font-size:14.5px; margin-bottom:22px;}
  .booking-card .btn{width:100%; text-align:center; background:var(--derme-text);}
  .booking-card .btn:hover{background:#5c4812;}
  .booking-note{font-size:12.5px; color:#b9c9bf; margin-top:14px;}

  /* ---------- pagamento ---------- */
  .payment{padding:90px 0; border-top:1px solid var(--line);}
  .refund-box{
    margin-top:36px; background:var(--paper-2); border:1px solid var(--line);
    border-radius:14px; padding:26px 28px; max-width:720px;
  }
  .refund-box h3{font-size:18px; margin-bottom:8px;}
  .refund-box p{font-size:14.5px; color:var(--ink-soft); line-height:1.6;}
  .payment-grid{display:grid; grid-template-columns:repeat(auto-fit, minmax(180px,1fr)); gap:20px; margin-top:44px;}
  .pay-chip{
    border:1px solid var(--line); border-radius:12px; padding:22px 18px;
    background:var(--white); text-align:center; font-weight:600; font-size:14.5px;
  }
  .pay-chip .icon{font-size:26px; display:flex; align-items:center; justify-content:center; margin-bottom:10px;}

  /* ---------- nosso espaço ---------- */
  .our-space{padding:90px 0 20px;}
  .our-space[hidden]{display:none;}
  .our-space h2{font-size:34px; margin:10px 0 12px;}
  .our-space > p{color:var(--ink-soft); font-size:16px; margin-bottom:32px; max-width:560px;}
  .space-gallery{display:grid; grid-template-columns:repeat(auto-fit, minmax(260px, 1fr)); gap:22px;}
  .space-photo{border-radius:16px; overflow:hidden; aspect-ratio:4/3; background:var(--paper-2);}
  .space-photo img{width:100%; height:100%; object-fit:cover;}

  /* ---------- localização ---------- */
  .location{background:var(--paper-2); padding:90px 0; border-top:1px solid var(--line);}
  .location-grid{display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:stretch;}
  .location-info h2{font-size:34px; margin-bottom:18px;}
  .location-info p{color:var(--ink-soft); font-size:16px; margin-bottom:10px;}
  .location-info .addr{font-size:18px; font-weight:600; margin:18px 0 22px; color:var(--ink);}
  .map-frame{
    border-radius:14px; overflow:hidden; border:1px solid var(--line); min-height:340px;
  }
  .map-frame iframe{width:100%; height:100%; min-height:340px; border:0;}

  /* ---------- footer ---------- */
  /* ---------- faq ---------- */
  .faq{padding:90px 0;}
  .faq-list{display:flex; flex-direction:column; gap:12px; max-width:760px;}
  .faq-item{background:var(--white); border:1px solid var(--line); border-radius:12px; padding:6px 22px;}
  .faq-item summary{
    list-style:none; cursor:pointer; padding:16px 0; font-weight:600; font-size:15.5px;
    display:flex; justify-content:space-between; align-items:center; gap:12px;
  }
  .faq-item summary::-webkit-details-marker{display:none;}
  .faq-item summary::after{content:"+"; font-size:20px; color:var(--subcutaneo); transition:transform .2s ease;}
  .faq-item[open] summary::after{transform:rotate(45deg);}
  .faq-item p{color:var(--ink-soft); font-size:14.5px; padding-bottom:18px; line-height:1.6;}

  footer{background:var(--ink); color:#e9e1d6; padding:56px 0 30px;}
  .footer-grid{display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:40px; padding-bottom:36px; border-bottom:1px solid rgba(255,255,255,.12);}
  footer h3{font-family:'Fraunces',serif; font-weight:500; color:#fff; margin-bottom:14px; font-size:17px;}
  footer p, footer a{color:#c9beae; font-size:14.5px;}
  footer .foot-links{display:flex; flex-direction:column; gap:10px;}
  footer .foot-links div{display:block;}
  footer .foot-links a{display:block; width:fit-content;}
  .social-row{display:flex; gap:12px; margin-top:16px;}
  .social-btn{
    display:flex; align-items:center; justify-content:center;
    width:42px; height:42px; border-radius:50%; color:#fff;
    transition:transform .2s ease, box-shadow .2s ease, opacity .2s ease;
  }
  .social-btn:hover{transform:translateY(-3px); box-shadow:0 8px 18px rgba(0,0,0,.35); opacity:.92;}
  .social-ig{background:radial-gradient(circle at 30% 110%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);}
  .social-fb{background:#1877F2;}
  .foot-bottom{padding-top:22px; font-size:13px; color:#a39889; display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px;}

  @media (max-width:860px){
    .nav-links{
      display:flex; flex-direction:column; gap:0; position:absolute;
      top:100%; left:0; right:0; background:var(--paper);
      border-bottom:1px solid var(--line); box-shadow:0 12px 24px rgba(0,0,0,.08);
      max-height:0; overflow-y:auto; -webkit-overflow-scrolling:touch; opacity:0; transition:max-height .25s ease, opacity .2s ease;
    }
    .nav-links.open{max-height:calc(100vh - 80px); opacity:1;}
    .nav-links a{padding:16px 24px; border-bottom:1px solid var(--line);}
    .menu-toggle{display:flex;}
    header .nav{position:relative;}
    .has-submenu{width:100%;}
    .submenu-trigger{padding:16px 24px; border-bottom:1px solid var(--line); justify-content:space-between;}
    .submenu{
      position:static; display:none; box-shadow:none; border:none; border-radius:0;
      background:var(--paper-2); padding:0; min-width:0;
    }
    .has-submenu.open .submenu{display:flex;}
    .submenu a{padding:14px 24px 14px 40px; border-bottom:1px solid var(--line); border-radius:0;}
    .hero{grid-template-columns:1fr; padding-top:48px;}
    .about-grid, .schedule-grid, .location-grid{grid-template-columns:1fr;}
    .service-grid{grid-template-columns:1fr 1fr;}
    .payment-grid{grid-template-columns:1fr 1fr;}
    .footer-grid{grid-template-columns:1fr;}
  }
  @media (max-width:540px){
    .service-grid{grid-template-columns:1fr;}
    .payment-grid{grid-template-columns:1fr;}
  }  /* ---------- whatsapp flutuante ---------- */
  #whatsFloat{
    position:fixed; left:24px; bottom:24px; z-index:60;
    width:54px; height:54px; border-radius:50%; background:#25D366;
    display:flex; align-items:center; justify-content:center;
    box-shadow:0 8px 20px rgba(0,0,0,.25);
    transition:transform .2s ease, box-shadow .2s ease;
    animation:whatsPulse 2.4s ease-in-out infinite;
  }
  #whatsFloat:hover{transform:scale(1.08); box-shadow:0 10px 24px rgba(0,0,0,.3);}
  @keyframes whatsPulse{
    0%, 100%{box-shadow:0 8px 20px rgba(0,0,0,.25), 0 0 0 0 rgba(37,211,102,.5);}
    50%{box-shadow:0 8px 20px rgba(0,0,0,.25), 0 0 0 10px rgba(37,211,102,0);}
  }
  @media (max-width:860px){
    #whatsFloat{left:16px; bottom:16px; width:50px; height:50px;}
  }

  /* ---------- botão voltar ao topo ---------- */
  #backToTop{
    position:fixed; right:24px; bottom:24px; z-index:60;
    width:46px; height:46px; border-radius:50%; border:none;
    background:var(--subcutaneo); color:#fff; cursor:pointer;
    display:flex; align-items:center; justify-content:center;
    box-shadow:0 8px 20px rgba(0,0,0,.2);
    opacity:0; visibility:hidden; transform:translateY(10px);
    transition:opacity .25s ease, transform .25s ease, background .2s ease;
  }
  #backToTop.show{opacity:1; visibility:visible; transform:translateY(0);}
  #backToTop:hover{background:#324c40;}
  @media (max-width:860px){
    #backToTop{right:16px; bottom:16px; width:42px; height:42px;}
  }
  .skip-link{
    position:absolute; top:-60px; left:12px; background:var(--subcutaneo); color:#fff;
    padding:12px 20px; border-radius:8px; z-index:100; text-decoration:none; font-weight:600;
    transition:top .2s ease;
  }
  .skip-link:focus{top:12px;}
</style><style>
  .blog-hero{padding:64px 0 40px;}
  .blog-hero h1{font-size:clamp(32px,4.5vw,46px); line-height:1.1; margin-bottom:14px;}
  .blog-hero p{color:var(--ink-soft); font-size:17px; max-width:560px;}
  .blog-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:28px; padding:20px 0 90px;}
  .post-card{
    background:var(--white); border:1px solid var(--line); border-radius:16px;
    overflow:hidden; display:flex; flex-direction:column; transition:transform .18s ease, box-shadow .18s ease;
  }
  .post-card:hover{transform:translateY(-3px); box-shadow:0 14px 30px rgba(43,36,32,.08);}
  .post-card-img{aspect-ratio:16/10; overflow:hidden; background:var(--paper-2);}
  .post-card-img img{width:100%; height:100%; object-fit:cover;}
  .post-card-body{padding:22px 22px 24px; display:flex; flex-direction:column; gap:10px; flex:1;}
  .post-tag{font-size:12px; text-transform:uppercase; letter-spacing:.1em; color:var(--derme-text); font-weight:600;}
  .post-card h3{font-size:20px; line-height:1.3;}
  .post-card p{color:var(--ink-soft); font-size:14.5px; line-height:1.55; flex:1;}
  .post-card .read-more{font-size:14px; font-weight:600; color:var(--subcutaneo); margin-top:4px;}
  .article-wrap{max-width:720px; margin:0 auto; padding:56px 28px 30px;}
  .article-eyebrow{display:flex; gap:10px; align-items:center; margin-bottom:18px;}
  .article-wrap h1{font-size:clamp(30px,4.5vw,42px); line-height:1.12; margin-bottom:16px;}
  .article-meta{color:var(--ink-soft); font-size:14px; margin-bottom:32px;}
  .article-body{font-size:17.5px; line-height:1.75; color:var(--ink);}
  .article-body h2{font-size:23px; margin:36px 0 14px;}
  .article-body p{margin-bottom:18px;}
  .article-cta{
    margin-top:40px; padding:26px; background:var(--paper-2); border-radius:16px;
    display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap;
  }
  .article-cta p{margin:0; font-weight:600; font-family:'Fraunces',serif; font-size:18px;}
  .article-disclaimer{font-size:13px; color:var(--ink-soft); margin-top:24px; font-style:italic;}
  .back-to-blog{display:inline-flex; align-items:center; gap:6px; color:var(--subcutaneo); font-weight:600; font-size:14px; margin-bottom:20px;}
  @media (max-width:640px){.article-cta{flex-direction:column; align-items:flex-start;}}
