/*
Theme Name: Voryan
Theme URI: https://voryan.com.br
Author: Voryan
Description: Tema institucional personalizado para a Voryan — firma independente de advisory estratégico para decisões de capital em ativos reais.
Version: 2.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: voryan
*/

  :root{
    --navy-deep:#0A0F1C; --navy:#10182A; --navy-mid:#1B2540; --navy-line:rgba(247,246,242,0.12);
    --paper:#F7F6F2; --paper-warm:#F1EEE6; --stone:#E2DED3;
    --ink:#10182A; --ink-soft:#525A6E; --ink-faint:#8891A3;
    --brass:#A9834F; --brass-soft:#C9A876; --brass-line:rgba(169,131,79,0.35);
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  html{scroll-behavior:smooth;}
  body{background:var(--paper); color:var(--ink); font-family:'Inter', sans-serif; font-weight:400; line-height:1.6; -webkit-font-smoothing:antialiased;}
  img{max-width:100%; display:block;}
  a{color:inherit; text-decoration:none;}
  .wrap{max-width:1180px; margin:0 auto; padding:0 40px;}
  .eyebrow{
    font-family:'IBM Plex Mono', monospace; font-size:11.5px; letter-spacing:0.16em; text-transform:uppercase;
    color:var(--brass); display:flex; align-items:center; gap:10px; margin-bottom:22px;
  }
  .eyebrow::before{content:""; width:26px; height:1px; background:var(--brass);}
  h1,h2,h3{font-family:'Fraunces', serif; font-weight:400; letter-spacing:-0.01em;}
  .serif-em{font-style:italic; font-weight:400;}
  ::selection{background:var(--brass-soft); color:var(--navy-deep);}

  header.nav{position:fixed; top:0; left:0; right:0; z-index:100; padding:22px 0; transition:background .35s ease, padding .35s ease, border-color .35s ease; border-bottom:1px solid transparent;}
  header.nav.scrolled{background:rgba(10,15,28,0.94); backdrop-filter:blur(10px); padding:14px 0; border-bottom:1px solid var(--navy-line);}
  header.nav .wrap{display:flex; align-items:center; justify-content:space-between;}
  .nav-logo img{height:19px; width:auto;}
  .nav-links{display:flex; align-items:center; gap:26px;}
  .nav-links a{font-family:'IBM Plex Mono', monospace; font-size:11.5px; letter-spacing:0.04em; color:rgba(247,246,242,0.72); transition:color .2s ease;}
  .nav-links a:hover{color:var(--brass-soft);}
  .nav-cta{font-family:'IBM Plex Mono', monospace; font-size:12px; letter-spacing:0.04em; color:var(--navy-deep) !important; background:var(--brass-soft); padding:10px 18px; border-radius:2px;}
  .nav-links a.nav-cta:hover{color:var(--navy-deep) !important; background:#dbb98a;}
  @media (max-width:900px){ .nav-links a:not(.nav-cta){display:none;} }

  .hero{position:relative; background:var(--navy-deep); color:var(--paper); padding:190px 0 110px; overflow:hidden;}
  .hero-bg{position:absolute; inset:0; opacity:0.5; pointer-events:none;}
  .hero .wrap{position:relative; z-index:2;}
  .hero-kicker{font-family:'IBM Plex Mono', monospace; font-size:12px; letter-spacing:0.18em; text-transform:uppercase; color:var(--brass-soft); display:flex; align-items:center; gap:12px; margin-bottom:34px;}
  .hero-kicker::before{content:""; width:30px; height:1px; background:var(--brass-soft);}
  .hero h1{font-size:clamp(36px, 5.2vw, 62px); line-height:1.14; max-width:820px; color:#FBFAF7; margin-bottom:30px;}
  .hero-sub{font-size:19px; max-width:560px; color:rgba(247,246,242,0.78); font-weight:300; margin-bottom:44px;}
  .hero-actions{display:flex; align-items:center; gap:28px; flex-wrap:wrap;}
  .btn-primary{font-family:'IBM Plex Mono', monospace; font-size:13px; letter-spacing:0.03em; background:var(--brass-soft); color:var(--navy-deep); padding:15px 28px; border-radius:2px; transition:background .2s ease, transform .2s ease; display:inline-block;}
  .btn-primary:hover{background:#e0c193; transform:translateY(-1px);}
  .btn-ghost{font-family:'IBM Plex Mono', monospace; font-size:13px; letter-spacing:0.03em; color:rgba(247,246,242,0.75); border-bottom:1px solid rgba(247,246,242,0.35); padding-bottom:3px; transition:color .2s ease, border-color .2s ease;}
  .btn-ghost:hover{color:#fff; border-color:#fff;}
  .hero-foot{margin-top:90px; padding-top:26px; border-top:1px solid var(--navy-line); display:flex; justify-content:space-between; flex-wrap:wrap; gap:14px; font-family:'IBM Plex Mono', monospace; font-size:11.5px; letter-spacing:0.03em; color:var(--ink-faint);}

  section{padding:110px 0;}
  .section-head{max-width:680px; margin-bottom:56px;}
  .section-head h2{font-size:clamp(27px, 3.6vw, 40px); line-height:1.18; color:var(--navy-deep);}
  .section-head p{color:var(--ink-soft); font-size:17px; margin-top:20px; max-width:580px;}
  section.on-navy{background:var(--navy-deep); color:var(--paper);}
  section.on-navy .section-head h2{color:#FBFAF7;}
  section.on-navy .section-head p{color:rgba(247,246,242,0.72);}

  /* problema */
  .stake-list{display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--stone); border:1px solid var(--stone); margin-top:10px;}
  .stake-item{background:#fff; padding:22px 26px; display:flex; justify-content:space-between; align-items:baseline; gap:16px;}
  .stake-item .who{font-family:'IBM Plex Mono', monospace; font-size:12px; letter-spacing:0.04em; color:var(--brass); text-transform:uppercase;}
  .stake-item .want{font-size:15px; color:var(--ink-soft);}
  .stake-item.final{background:var(--navy-deep); grid-column:1 / -1;}
  .stake-item.final .who{color:var(--brass-soft);}
  .stake-item.final .want{color:#FBFAF7; font-family:'Fraunces',serif; font-style:italic; font-size:18px;}
  @media (max-width:700px){ .stake-list{grid-template-columns:1fr;} }

  /* a firma */
  .firma-text p{font-size:17px; color:var(--ink-soft); margin-bottom:22px; max-width:680px;}
  .firma-quote{
    margin-top:20px; padding:26px 30px; background:var(--paper-warm); border-left:2px solid var(--brass);
    font-family:'Fraunces',serif; font-style:italic; font-size:19px; color:var(--navy-deep); max-width:640px;
  }

  /* entrega (4 outputs) */
  .deliver-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--stone); border:1px solid var(--stone); margin-top:10px;}
  .deliver-item{background:#fff; padding:34px 26px;}
  .deliver-item .dnum{font-family:'IBM Plex Mono', monospace; font-size:11px; color:var(--brass); letter-spacing:0.08em; display:block; margin-bottom:14px;}
  .deliver-item h3{font-size:20px; color:var(--navy-deep); margin-bottom:10px; font-weight:400;}
  .deliver-item p{font-size:14px; color:var(--ink-soft);}
  @media (max-width:900px){ .deliver-grid{grid-template-columns:1fr 1fr;} }
  @media (max-width:560px){ .deliver-grid{grid-template-columns:1fr;} }

  /* flagship product */
  .flagship{
    margin-top:20px; background:var(--navy-mid); border:1px solid var(--navy-line); border-radius:2px;
    padding:44px 40px; display:grid; grid-template-columns:1.1fr 0.9fr; gap:44px; align-items:center;
  }
  .flagship .fname{font-family:'IBM Plex Mono', monospace; font-size:11px; letter-spacing:0.1em; color:var(--brass-soft); text-transform:uppercase; margin-bottom:14px; display:block;}
  .flagship h3{font-size:26px; color:#FBFAF7; margin-bottom:14px; font-weight:400;}
  .flagship p{font-size:15px; color:rgba(247,246,242,0.72); margin-bottom:8px;}
  .flagship-outcomes{display:flex; flex-direction:column; gap:8px;}
  .flagship-outcomes span{
    font-family:'IBM Plex Mono', monospace; font-size:12px; color:rgba(247,246,242,0.85);
    border-left:2px solid var(--brass); padding:8px 14px; background:rgba(255,255,255,0.03);
  }
  @media (max-width:860px){ .flagship{grid-template-columns:1fr;} }

  /* framework (10 dims) */
  .framework{display:grid; grid-template-columns:repeat(5,1fr); gap:1px; background:var(--navy-line); margin-top:10px; border:1px solid var(--navy-line);}
  .fitem{background:var(--navy-deep); padding:26px 20px;}
  .fitem .fnum{font-family:'IBM Plex Mono', monospace; font-size:20px; color:var(--brass-soft); display:block; margin-bottom:8px;}
  .fitem h4{font-family:'Inter',sans-serif; font-weight:600; font-size:14px; color:#FBFAF7; margin-bottom:6px; text-transform:uppercase; letter-spacing:0.02em;}
  .fitem p{font-size:12.5px; color:rgba(247,246,242,0.62);}
  @media (max-width:900px){ .framework{grid-template-columns:repeat(2,1fr);} }
  @media (max-width:560px){ .framework{grid-template-columns:1fr;} }

  /* processo (7 steps) */
  .process-list{margin-top:10px; max-width:800px;}
  .process-item{display:grid; grid-template-columns:64px 1fr; gap:22px; padding:24px 0; border-top:1px solid var(--stone);}
  .process-list .process-item:last-child{border-bottom:1px solid var(--stone);}
  .process-item .pnum{font-family:'Fraunces',serif; font-style:italic; font-size:26px; color:var(--brass);}
  .process-item h4{font-size:17px; color:var(--navy-deep); margin-bottom:6px; font-weight:600; font-family:'Inter',sans-serif;}
  .process-item p{font-size:14.5px; color:var(--ink-soft);}

  /* servicos - layers */
  .layer{border-top:1px solid var(--stone); padding:50px 0; display:grid; grid-template-columns:260px 1fr; gap:44px;}
  .layer:last-child{border-bottom:1px solid var(--stone);}
  .layer-head .num{font-family:'IBM Plex Mono', monospace; font-size:12px; letter-spacing:0.08em; color:var(--brass); display:block; margin-bottom:12px;}
  .layer-head h3{font-size:24px; color:var(--navy-deep); margin-bottom:10px; font-weight:400;}
  .layer-head p{font-size:14px; color:var(--ink-soft); font-style:italic;}
  .layer-services{display:grid; grid-template-columns:1fr 1fr; gap:26px;}
  .svc h4{font-family:'Inter', sans-serif; font-weight:600; font-size:15px; color:var(--navy-deep); margin-bottom:7px;}
  .svc p{font-size:14px; color:var(--ink-soft);}
  @media (max-width:860px){ .layer{grid-template-columns:1fr;} .layer-services{grid-template-columns:1fr;} }

  /* entrega/recebe split */
  .split-2{display:grid; grid-template-columns:1fr 1fr; gap:56px; margin-top:10px;}
  .split-2 h3{font-size:19px; color:var(--navy-deep); margin-bottom:16px; font-weight:400;}
  .split-2 ul{list-style:none;}
  .split-2 li{font-size:14.5px; color:var(--ink-soft); padding:10px 0; border-top:1px solid var(--stone);}
  .split-2 li:first-of-type{border-top:none; padding-top:0;}
  @media (max-width:860px){ .split-2{grid-template-columns:1fr;} }

  /* para quem */
  .client-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--stone); border:1px solid var(--stone); margin-top:10px;}
  .client-item{background:#fff; padding:30px 26px;}
  .client-item h4{font-size:17px; color:var(--navy-deep); margin-bottom:10px; font-weight:600; font-family:'Inter',sans-serif;}
  .client-item p{font-size:13.5px; color:var(--ink-soft);}
  @media (max-width:860px){ .client-grid{grid-template-columns:1fr 1fr;} }
  @media (max-width:560px){ .client-grid{grid-template-columns:1fr;} }

  /* quando faz sentido */
  .qual-list{margin-top:10px; max-width:760px;}
  .qual-item{display:flex; gap:18px; padding:18px 0; border-top:1px solid var(--navy-line); align-items:baseline;}
  .qual-list .qual-item:last-child{border-bottom:1px solid var(--navy-line);}
  .qual-item .qmark{font-family:'Fraunces',serif; font-style:italic; color:var(--brass-soft); font-size:18px;}
  .qual-item p{font-size:16px; color:rgba(247,246,242,0.85);}

  /* independencia / nao fazemos */
  .principle{padding:110px 0; background:var(--navy-mid); color:var(--paper); border-top:1px solid var(--navy-line); border-bottom:1px solid var(--navy-line);}
  .principle h2{font-family:'Fraunces', serif; font-style:italic; font-weight:400; font-size:clamp(24px, 3.2vw, 36px); line-height:1.4; max-width:780px; color:#FBFAF7; margin-bottom:24px;}
  .principle-list{margin-top:30px; display:grid; grid-template-columns:1fr 1fr; gap:14px 40px; max-width:900px;}
  .principle-list div{font-size:15px; color:rgba(247,246,242,0.75); padding-left:18px; position:relative;}
  .principle-list div::before{content:"—"; position:absolute; left:0; color:var(--brass-soft);}
  @media (max-width:700px){ .principle-list{grid-template-columns:1fr;} }

  .notdo-list{margin-top:10px; max-width:820px;}
  .notdo-item{padding:16px 0; border-top:1px solid var(--stone); font-size:16px; color:var(--ink-soft);}
  .notdo-list .notdo-item:last-child{border-bottom:1px solid var(--stone);}
  .notdo-item strong{color:var(--navy-deep); font-weight:600;}

  /* rede */
  .network-tags{display:flex; flex-wrap:wrap; gap:10px; margin-top:24px;}
  .network-tags span{font-family:'IBM Plex Mono', monospace; font-size:11px; letter-spacing:0.03em; color:var(--brass); border:1px solid var(--brass-line); padding:6px 12px; border-radius:2px;}

  /* insights */
  .insights-tags{display:flex; flex-wrap:wrap; gap:10px; margin-top:26px;}
  .insights-tags span{font-family:'IBM Plex Mono', monospace; font-size:11px; color:var(--ink-faint); border:1px solid var(--stone); padding:7px 14px; border-radius:2px;}
  .insights-note{margin-top:30px; font-size:14px; color:var(--ink-faint); font-style:italic;}
  .insights-byline{margin-top:14px; font-family:'IBM Plex Mono', monospace; font-size:11.5px; letter-spacing:0.05em; color:var(--brass); text-transform:uppercase;}

  /* contato */
  .contact-section{background:var(--navy-deep); color:var(--paper);}
  .contact-grid{display:grid; grid-template-columns:1.1fr 0.9fr; gap:70px; padding-top:10px; align-items:start;}
  .contact-grid h2{font-size:clamp(28px,3.8vw,42px); color:#FBFAF7; line-height:1.2; max-width:600px;}
  .contact-grid .lede{color:rgba(247,246,242,0.72); font-size:16.5px; margin-top:20px; max-width:520px; font-weight:300;}
  .contact-details{border-top:1px solid var(--navy-line); padding-top:34px;}
  .cd-row{margin-bottom:26px;}
  .cd-row .cd-label{font-family:'IBM Plex Mono', monospace; font-size:11px; letter-spacing:0.08em; text-transform:uppercase; color:var(--brass-soft); margin-bottom:8px; display:block;}
  .cd-row a, .cd-row span{font-size:16px; color:#FBFAF7;}
  .cd-row a:hover{color:var(--brass-soft);}
  @media (max-width:860px){ .contact-grid{grid-template-columns:1fr; gap:44px;} }

  .legal-note{background:var(--paper-warm); padding:50px 0; border-top:1px solid var(--stone);}
  .legal-note .wrap p{font-size:13px; color:var(--ink-faint); max-width:760px; line-height:1.7;}

  footer{background:var(--navy-deep); color:rgba(247,246,242,0.55); border-top:1px solid var(--navy-line); padding:40px 0;}
  footer .wrap{display:flex; flex-direction:column; gap:10px;}
  footer img{height:15px; opacity:0.85; margin-bottom:6px;}
  footer .fine{font-family:'IBM Plex Mono', monospace; font-size:11px; letter-spacing:0.03em;}
  footer .fine.small{color:rgba(247,246,242,0.4); font-size:10.5px;}

  @media (max-width:640px){ .wrap{padding:0 24px;} section{padding:74px 0;} .hero{padding:150px 0 76px;} }

  [data-reveal]{opacity:0; transform:translateY(18px); transition:opacity .7s ease, transform .7s ease;}
  [data-reveal].is-visible{opacity:1; transform:translateY(0);}
