/*
Theme Name: Prime Películas
Theme URI: https://primepeliculasparavidros.com.br/
Author: Prime Películas
Author URI: https://primepeliculasparavidros.com.br/
Description: Tema personalizado para a Prime Películas — películas para vidros residenciais e comerciais em Maringá, PR. Landing page one-page com identidade visual em azul petróleo, seções de serviços, sobre, galeria e contato via WhatsApp.
Version: 1.6
Requires at least: 5.0
Requires PHP: 7.2
Text Domain: prime-peliculas
*/

:root{
    --white:#FFFFFF;
    --ice:#F3F8FC;
    --navy:#0E2A42;
    --navy-soft:#4C6479;
    --blue:#2E71A8;
    --blue-bright:#0A84FF;
    --blue-deep:#0C3459;
    --glass-bg: rgba(255,255,255,.55);
    --glass-bg-strong: rgba(255,255,255,.75);
    --glass-border: rgba(255,255,255,.6);
    --dark-glass-bg: rgba(14,42,66,.45);
    --dark-glass-border: rgba(255,255,255,.22);
    --radius-lg: 28px;
    --radius-md: 20px;
    --maxw: 1180px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    margin:0; background:var(--ice); color:var(--navy);
    font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    -webkit-font-smoothing:antialiased; overflow-x:hidden;
    position:relative;
  }
  body::before{
    content:"";
    position:fixed; inset:0; z-index:-2;
    background:
      radial-gradient(900px 620px at 8% 0%, rgba(10,132,255,.16), transparent 60%),
      radial-gradient(760px 640px at 96% 14%, rgba(46,113,168,.20), transparent 55%),
      radial-gradient(820px 700px at 50% 55%, rgba(10,132,255,.10), transparent 60%),
      radial-gradient(900px 680px at 10% 100%, rgba(12,52,89,.14), transparent 55%),
      var(--ice);
  }
  body::after{
    content:"";
    position:fixed; inset:0; z-index:-1;
    opacity:.5;
    mix-blend-mode:multiply;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='matrix' values='0 0 0 0 0.05  0 0 0 0 0.16  0 0 0 0 0.26  0 0 0 0.05 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  }
  h1,h2,h3{ font-weight:800; letter-spacing:-0.03em; margin:0; color:var(--navy); }
  p{margin:0;}
  a{color:inherit; text-decoration:none;}
  img{max-width:100%; display:block;}
  .wrap{max-width:var(--maxw); margin:0 auto; padding:0 28px;}
  section{position:relative;}

  .eyebrow{ font-size:12.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--blue); font-weight:700; }
  .eyebrow.on-dark{ color:#BFE0F7; }

  .btn{
    display:inline-flex; align-items:center; justify-content:center; gap:9px;
    padding:16px 30px; font-weight:700; font-size:15px; letter-spacing:-.01em;
    border-radius:999px; cursor:pointer; border:1px solid transparent;
    transition:transform .25s ease, box-shadow .25s ease, background .25s ease;
  }
  .btn:hover{ transform:translateY(-2px); }
  .btn-primary{ background:linear-gradient(180deg, #1E93FF, var(--blue-bright)); color:#fff; box-shadow:0 14px 30px -10px rgba(10,132,255,.55); }
  .btn-glass{ background:var(--glass-bg-strong); backdrop-filter: blur(16px) saturate(160%); -webkit-backdrop-filter: blur(16px) saturate(160%); border:1px solid var(--glass-border); color:var(--navy); }
  .btn-glass-dark{ background:var(--dark-glass-bg); backdrop-filter: blur(16px) saturate(160%); -webkit-backdrop-filter: blur(16px) saturate(160%); border:1px solid var(--dark-glass-border); color:#fff; }
  .btn-sm{ padding:11px 20px; font-size:13.5px; }

  .glass{ background:var(--glass-bg); backdrop-filter: blur(20px) saturate(180%); -webkit-backdrop-filter: blur(20px) saturate(180%); border:1px solid var(--glass-border); border-radius:var(--radius-md); box-shadow:0 20px 60px -20px rgba(14,42,66,.28); }

  /* ---------- HEADER ---------- */
  header{ position:fixed; top:0; left:0; right:0; z-index:100; padding-top:14px; }
  header .bar{ max-width:var(--maxw); margin:0 auto; display:flex; align-items:center; justify-content:space-between; padding:10px 18px 10px 22px; border-radius:999px; }
  header .logo-img{ height:32px; }
  .logo-brand{ display:flex; align-items:center; gap:10px; }
  .logo-icon{ width:38px; height:38px; border-radius:50%; flex:none; box-shadow:0 4px 12px -4px rgba(6,48,63,.5); }
  .logo-text{ display:flex; flex-direction:column; line-height:1.05; }
  .logo-text strong{ font-size:18px; font-weight:800; color:var(--navy); letter-spacing:-.02em; }
  .logo-text small{ font-size:9.5px; font-weight:700; letter-spacing:.03em; color:var(--blue); text-transform:uppercase; }
  footer .footer-logo-icon{ width:34px; height:34px; border-radius:50%; opacity:.95; }
  .navlinks{ display:flex; align-items:center; gap:28px; }
  .navlinks a{ font-size:13.5px; font-weight:700; color:var(--navy-soft); }
  .navlinks a:hover{ color:var(--navy); }
  @media (max-width:760px){ .navlinks{ display:none; } }

  /* ---------- HERO ---------- */
  .hero{
    height:92vh; min-height:620px;
    display:flex; align-items:flex-end;
    background-color:#06303F;
    padding-bottom:0;
  }
  .hero-inner{ width:100%; padding-bottom:64px; }
  .hero h1{ font-size:clamp(34px,5.4vw,64px); line-height:1.02; color:#fff; margin:18px 0 20px; max-width:760px; }
  .hero p.lead{ font-size:18px; color:#DCE9F3; max-width:520px; font-weight:500; margin-bottom:30px; }
  .hero-ctas{ display:flex; gap:14px; flex-wrap:wrap; margin-bottom:46px; }

  @media (max-width:760px){
    .hero{ height:auto; min-height:0; padding-top:130px; }
    .hero-inner{ padding-bottom:36px; }
  }

  /* ---------- RESULTS ---------- */
  .results{ padding:64px 0 90px; margin-top:-72px; position:relative; z-index:5; background:#06303F; }
  .results-grid{
    display:grid; grid-template-columns:repeat(4,1fr); gap:18px;
  }
  .result-card{
    padding:30px 24px 26px;
    background:linear-gradient(160deg, var(--blue-deep), #124067 60%, #0A84FF 160%);
    border:1px solid rgba(255,255,255,.12);
  }
  .result-icon{
    width:44px; height:44px; border-radius:13px;
    display:flex; align-items:center; justify-content:center;
    background:rgba(255,255,255,.14);
    margin-bottom:18px;
  }
  .result-card b{
    display:block; font-size:clamp(28px,2.8vw,36px); font-weight:800; color:#fff; letter-spacing:-.02em; line-height:1;
  }
  .result-label{ display:block; font-size:12.5px; color:#8FCBFF; font-weight:700; margin:8px 0 12px; text-transform:uppercase; letter-spacing:.05em; }
  .result-card p{ font-size:13px; color:#C7DEF0; font-weight:500; line-height:1.55; }
  @media (max-width:900px){ .results-grid{ grid-template-columns:repeat(2,1fr); } .results{ margin-top:-50px; } }
  @media (max-width:600px){ .results-grid{ grid-template-columns:1fr; } }

  /* ---------- SECTION HEAD ---------- */
  .sec-head{ max-width:600px; margin-bottom:46px; }
  .sec-head h2{ font-size:clamp(28px,3.4vw,42px); margin-top:14px; line-height:1.08; }
  .sec-head p{ color:var(--navy-soft); font-size:16.5px; margin-top:14px; font-weight:500; }
  .center{ text-align:center; margin-left:auto; margin-right:auto; }

  /* ---------- SOLUTIONS ---------- */
  .solutions{ padding:110px 0 90px; }
  .sol-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
  .sol-card{ padding:32px 26px; transition:transform .3s ease; }
  .sol-card:hover{ transform:translateY(-6px); }
  .sol-icon{ width:50px; height:50px; border-radius:15px; display:flex; align-items:center; justify-content:center; background:linear-gradient(160deg, #1E93FF, var(--blue-deep)); margin-bottom:20px; box-shadow:0 10px 24px -8px rgba(10,132,255,.5); }
  .sol-card h3{ font-size:18px; margin-bottom:9px; letter-spacing:-.01em; }
  .sol-card p{ font-size:14px; color:var(--navy-soft); line-height:1.55; font-weight:500; }

  @media (max-width:900px){ .sol-grid{ grid-template-columns:repeat(2,1fr); } }
  @media (max-width:600px){ .sol-grid{ grid-template-columns:1fr; } }

  /* ---------- DARK SECTION (contraste na LP) ---------- */
  .section-dark{
    position:relative; overflow:hidden;
    background:#06303F;
    padding:120px 0 100px;
  }
  .section-dark::before{
    content:""; position:absolute; inset:0; pointer-events:none;
    background-image:
      linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),
      linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
    background-size:54px 54px;
    -webkit-mask-image:radial-gradient(circle at 50% 20%, black, transparent 72%);
    mask-image:radial-gradient(circle at 50% 20%, black, transparent 72%);
  }
  .section-dark::after{
    content:""; position:absolute; top:-18%; left:50%; transform:translateX(-50%);
    width:900px; height:520px; pointer-events:none;
    background:radial-gradient(circle, rgba(53,174,227,.30), transparent 65%);
  }
  .section-dark .wrap{ position:relative; z-index:2; }
  .section-dark .eyebrow{
    display:inline-flex; color:#8FCBFF;
    padding:9px 20px; border:1px solid rgba(255,255,255,.14); border-radius:999px;
    background:rgba(255,255,255,.03);
  }
  .section-dark .sec-head{ display:flex; flex-direction:column; align-items:center; }
  .section-dark .sec-head h2{ color:#fff; }
  .section-dark .sec-head p{ color:#8FA4B8; }

  .sol-card.dark{ background:rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.09); box-shadow:none; backdrop-filter:blur(6px); }
  .sol-card.dark:hover{ background:rgba(255,255,255,.05); border-color:rgba(255,255,255,.16); }
  .sol-card.dark h3{ color:#fff; }
  .sol-card.dark p{ color:#8FA0B2; }
  .sol-icon.dark{ background:rgba(53,174,227,.14); box-shadow:none; border:1px solid rgba(53,174,227,.28); }
  .sol-icon.dark svg *{ stroke:#5FB0FF !important; }

  .faq.section-dark .faq-list{ background:rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.09); box-shadow:none; backdrop-filter:blur(6px); }
  .faq.section-dark .faq-item{ border-bottom-color:rgba(255,255,255,.08); }
  .faq.section-dark .faq-q{ color:#fff; }
  .faq.section-dark .faq-q .plus::before, .faq.section-dark .faq-q .plus::after{ background:#5FB0FF; }
  .faq.section-dark .faq-a p{ color:#8FA0B2; }

  /* ---------- ABOUT ---------- */
  .about{ padding:100px 0 110px; position:relative; overflow:hidden; }
  .about::before{
    content:""; position:absolute; top:-10%; left:-8%; width:520px; height:520px;
    background:radial-gradient(circle, rgba(10,132,255,.10), transparent 65%);
    pointer-events:none;
  }
  .about::after{
    content:""; position:absolute; bottom:-15%; right:-10%; width:560px; height:560px;
    background:radial-gradient(circle, rgba(46,113,168,.09), transparent 65%);
    pointer-events:none;
  }
  .about .wrap{ position:relative; z-index:2; }
  .about .eyebrow{
    display:inline-flex; padding:8px 18px; border-radius:999px;
    border:1px solid rgba(10,132,255,.18); background:rgba(10,132,255,.06);
  }
  .about-grid{ display:grid; grid-template-columns:1.15fr .85fr; gap:64px; align-items:start; }
  .about-text h2{ font-size:clamp(28px,3.2vw,38px); margin:16px 0 22px; line-height:1.16; }
  .about-text h2 .accent-navy{ color:var(--blue-bright); }
  .about-text p{ font-size:15.5px; color:var(--navy-soft); font-weight:500; line-height:1.72; margin-bottom:16px; max-width:560px; }
  .about-text .btn{ margin-top:14px; }

  .about-media{ position:relative; padding-bottom:8px; }
  .about-photo{ height:400px; border-radius:28px; overflow:hidden; box-shadow:0 30px 70px -20px rgba(14,42,66,.4); }
  .about-photo img{ width:100%; height:100%; object-fit:cover; }
  .about-stat-card{
    margin:-64px 22px 0; position:relative; z-index:2;
    padding:30px 28px; border-radius:22px;
  }
  .about-stat-card b{ display:block; font-size:52px; font-weight:800; color:var(--blue-bright); line-height:1; letter-spacing:-.03em; }
  .about-stat-card > span{ display:block; font-size:12.5px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--navy-soft); margin:8px 0 22px; }
  .about-stat-list{ display:flex; flex-direction:column; gap:13px; padding-top:20px; border-top:1px solid rgba(14,42,66,.1); }
  .about-stat-list div{ display:flex; align-items:center; gap:10px; font-size:13.5px; font-weight:600; color:var(--navy); }
  .about-stat-list svg{ flex:none; }
  @media (max-width:900px){
    .about-grid{ grid-template-columns:1fr; }
    .about-photo{ height:320px; }
  }
  @media (max-width:640px){
    .about-stat-card{ margin:-48px 10px 0; padding:24px 20px; }
  }

  /* ---------- MINI CTA ---------- */
  .mini-cta{ text-align:center; margin-top:44px; }

  /* ---------- SPLIT FEATURES (photo + text) ---------- */
  .split{ padding:70px 0; }
  .split .wrap{ display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center; }
  .split.rev .wrap{ direction:rtl; }
  .split.rev .wrap > *{ direction:ltr; }
  .split-media{ border-radius:var(--radius-lg); overflow:hidden; height:420px; box-shadow:0 30px 60px -20px rgba(14,42,66,.3); }
  .split-media img{ width:100%; height:100%; object-fit:cover; }
  .split-media.two{ display:grid; grid-template-columns:1fr 1fr; gap:14px; height:420px; box-shadow:none; }
  .split-media.two img{ border-radius:var(--radius-lg); height:100%; box-shadow:0 20px 44px -16px rgba(14,42,66,.28); }
  .split-text h3{ font-size:clamp(24px,2.8vw,34px); margin:14px 0 16px; line-height:1.12; }
  .split-text p{ font-size:16px; color:var(--navy-soft); font-weight:500; line-height:1.62; max-width:460px; }

  /* dark variant for commercial split — same rhythm as .section-dark */
  .split-dark{
    position:relative; overflow:hidden;
    background:#06303F;
    padding:90px 0;
  }
  .split-dark::before{
    content:""; position:absolute; inset:0; pointer-events:none;
    background-image:
      linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),
      linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
    background-size:54px 54px;
    -webkit-mask-image:radial-gradient(circle at 15% 40%, black, transparent 65%);
    mask-image:radial-gradient(circle at 15% 40%, black, transparent 65%);
  }
  .split-dark::after{
    content:""; position:absolute; bottom:-20%; right:-10%;
    width:700px; height:500px; pointer-events:none;
    background:radial-gradient(circle, rgba(53,174,227,.22), transparent 65%);
  }
  .split-dark .wrap{ position:relative; z-index:2; }
  .split-dark .eyebrow{
    display:inline-flex; color:#8FCBFF;
    padding:9px 20px; border:1px solid rgba(255,255,255,.14); border-radius:999px;
    background:rgba(255,255,255,.03);
  }
  .split-dark .split-text h3{ color:#fff; }
  .split-dark .split-text p{ color:#8FA0B2; }

  @media (max-width:900px){
    .split .wrap{ grid-template-columns:1fr; gap:28px; }
    .split.rev .wrap{ direction:ltr; }
    .split-media, .split-media.two{ height:280px; }
  }

  /* ---------- GALLERY ---------- */
  .gallery{ padding:90px 0 100px; }
  .gal-grid{
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    grid-auto-rows:170px;
    gap:14px;
  }
  .gal-grid img{ width:100%; height:100%; object-fit:cover; border-radius:16px; transition:transform .5s ease; }
  .gal-item{ overflow:hidden; border-radius:16px; }
  .gal-item:hover img{ transform:scale(1.06); }
  .gal-item.big{ grid-column:span 2; grid-row:span 2; }
  @media (max-width:900px){
    .gal-grid{ grid-template-columns:repeat(2,1fr); grid-auto-rows:150px; }
    .gal-item.big{ grid-column:span 2; grid-row:span 1; }
  }

  /* ---------- TESTIMONIALS ---------- */
  .testimonials{ padding:90px 0 100px; }
  .reviews-grid{
    display:grid; grid-template-columns:repeat(3,1fr); gap:20px;
    margin-top:10px;
  }
  .review-card{ padding:26px 24px; }
  .review-head{ display:flex; align-items:center; gap:12px; margin-bottom:14px; }
  .review-avatar{
    width:42px; height:42px; border-radius:50%; flex:none;
    display:flex; align-items:center; justify-content:center;
    color:#fff; font-weight:800; font-size:16px;
  }
  .review-head b{ display:block; font-size:14.5px; color:var(--navy); font-weight:700; }
  .review-head span{ display:block; font-size:12px; color:var(--navy-soft); font-weight:500; }
  .review-stars{ color:#F5A623; font-size:14px; letter-spacing:1px; margin-bottom:12px; }
  .review-stars .review-time{ color:var(--navy-soft); font-size:12px; font-weight:600; letter-spacing:0; margin-left:6px; }
  .review-card p{ font-size:14px; color:var(--navy-soft); font-weight:500; line-height:1.6; }
  .testimonials-cta{ text-align:center; margin-top:40px; }
  @media (max-width:980px){ .reviews-grid{ grid-template-columns:repeat(2,1fr); } }
  @media (max-width:640px){ .reviews-grid{ grid-template-columns:1fr; } }

  /* ---------- FINAL CTA ---------- */
  .cta-section{ padding:100px 0 110px; }
  .cta-panel{
    padding:70px 50px; text-align:center;
    background:linear-gradient(135deg, var(--blue-deep), #0A84FF 140%);
    border-radius:36px; position:relative; overflow:hidden; color:#fff;
  }
  .cta-panel::before{ content:""; position:absolute; top:-40%; left:-10%; width:60%; height:180%; background:radial-gradient(circle, rgba(255,255,255,.16), transparent 60%); }
  .cta-panel h2{ color:#fff; font-size:clamp(28px,3.6vw,44px); margin:14px auto 16px; line-height:1.1; max-width:640px; }
  .cta-panel p{ color:#D9ECFA; font-size:16px; font-weight:500; max-width:420px; margin:0 auto 32px; }
  .cta-actions{ display:flex; gap:14px; justify-content:center; flex-wrap:wrap; position:relative; z-index:2; }
  .cta-panel .btn-glass-dark:hover{ background:rgba(14,42,66,.6); }

  /* ---------- FOOTER ---------- */
  footer{ padding:36px 0 30px; }
  footer .wrap{ display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:14px; }
  footer img{ height:24px; opacity:.85; }
  footer .fine{ font-size:12.5px; color:var(--navy-soft); font-weight:500; }
  footer .social{ display:flex; gap:12px; }
  footer .social a{ width:34px; height:34px; border-radius:50%; display:flex; align-items:center; justify-content:center; }

  /* ---------- WHATSAPP FLOAT ---------- */
  .wa-float{
    position:fixed; right:22px; bottom:22px; z-index:90;
    width:60px; height:60px; border-radius:50%; background:#25D366;
    display:flex; align-items:center; justify-content:center;
    box-shadow:0 16px 34px -10px rgba(0,0,0,.4);
    transition:transform .25s ease;
  }
  .wa-float::after{ content:""; position:absolute; inset:-6px; border-radius:50%; border:2px solid rgba(37,211,102,.4); animation:pulse 2.4s ease-out infinite; }
  @keyframes pulse{ 0%{ transform:scale(.9); opacity:.8; } 100%{ transform:scale(1.5); opacity:0; } }
  .wa-float:hover{ transform:scale(1.08); }
  @media (prefers-reduced-motion:reduce){ .wa-float::after{ animation:none; } html{ scroll-behavior:auto; } }

  /* ---------- reveal ---------- */
  .reveal{ opacity:0; transform:translateY(20px); transition:opacity .7s ease, transform .7s ease; }
  .reveal.in{ opacity:1; transform:none; }

  @media (max-width:640px){
    .wrap{ padding:0 20px; }
    .sol-card, .cta-panel{ padding:26px 20px; }
  }