/*
Theme Name: Calculadora de Job Audiovisual da HUP
Theme URI: https://calculadora-job-hup.guibarruchi.chatgpt.site/
Author: HUP
Description: Tema WordPress da Calculadora de Job Audiovisual da HUP, com calculadora responsiva, orçamento para clientes e blog.
Version: 2.0.0
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: calculadora-job-hup
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Tags: blog, custom-logo, featured-images
*/


    :root {
      --ink:#171717; --paper:#f3f0e8; --white:#fff; --yellow:#ffd814;
      --red:#ff2c21; --blue:#63b2de; --coral:#ff866e; --line:#d8d4ca;
      --muted:#74736f; --sans:Arial,Helvetica,sans-serif;
    }
    * { box-sizing:border-box; }
    html { scroll-behavior:smooth; }
    body { margin:0; background:var(--paper); color:var(--ink); font-family:var(--sans); }
    button,input,textarea,select { font:inherit; }
    button { cursor:pointer; }
    a { color:inherit; text-decoration:none; }
    .brand { font-size:2.2rem; font-weight:950; letter-spacing:-.09em; }
    .brand span { color:var(--red); }
    .topbar,.hero,.workspace { width:min(1420px,calc(100% - 48px)); margin-inline:auto; }
    .topbar { min-height:80px; display:flex; align-items:center; justify-content:space-between; gap:25px; border-bottom:1px solid var(--line); }
    .topbar nav { display:flex; align-items:center; gap:22px; color:var(--muted); font-size:.68rem; font-weight:900; text-transform:uppercase; letter-spacing:.07em; }
    .live { display:flex; align-items:center; gap:7px; }
    .live i { width:7px; height:7px; border-radius:50%; background:var(--red); }
    .hero { min-height:430px; display:grid; grid-template-columns:1fr 220px; gap:70px; align-items:center; position:relative; }
    .eyebrow { width:fit-content; margin:0 0 18px; padding:7px 10px; background:var(--blue); font-size:.62rem; font-weight:900; text-transform:uppercase; letter-spacing:.1em; transform:rotate(-1deg); }
    .hero h1 { margin:0; font-size:clamp(4.2rem,8vw,8rem); line-height:.82; letter-spacing:-.08em; }
    .hero h1 em { color:var(--red); font-family:Georgia,serif; font-weight:400; }
    .hero-copy>p:last-child { max-width:760px; margin:30px 0 0; color:var(--muted); font-family:Georgia,serif; font-size:1.05rem; line-height:1.6; }
    .stamp { width:195px; aspect-ratio:1; display:grid; place-content:center; border-radius:50%; background:var(--yellow); text-align:center; transform:rotate(5deg); }
    .stamp span { font-size:.58rem; font-weight:900; text-transform:uppercase; }
    .stamp strong { font-size:1.35rem; letter-spacing:-.04em; }
    .stamp b { margin-top:8px; color:var(--red); font-size:1.5rem; }
    .workspace { display:grid; grid-template-columns:minmax(0,1fr) 400px; gap:20px; align-items:start; margin-bottom:85px; }
    .form-column { display:grid; gap:18px; min-width:0; }
    .card { padding:32px; background:var(--white); border-top:7px solid var(--yellow); }
    .card.blue { border-top-color:var(--blue); }
    .card.coral { border-top-color:var(--coral); }
    .card.red { border-top-color:var(--red); }
    .section-title { display:grid; grid-template-columns:42px 1fr; gap:14px; margin-bottom:26px; }
    .section-title>span { color:var(--red); font-size:.63rem; font-weight:950; }
    .section-title h2 { margin:0; font-size:1.65rem; letter-spacing:-.045em; }
    .section-title p { margin:7px 0 0; color:var(--muted); font-size:.72rem; line-height:1.5; }
    .grid-3 { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
    .field { display:grid; align-content:start; gap:8px; }
    .field>span { min-height:30px; font-size:.65rem; font-weight:850; line-height:1.35; }
    .input-wrap { display:grid; grid-template-columns:auto 1fr; align-items:center; border:1px solid var(--line); background:#fbfaf7; }
    .input-wrap b { padding-left:12px; color:var(--muted); font-size:.7rem; }
    input,textarea { min-width:0; width:100%; border:1px solid var(--line); background:#fbfaf7; color:var(--ink); padding:12px; }
    .input-wrap input { border:0; }
    input:focus,textarea:focus { outline:3px solid rgba(99,178,222,.2); border-color:var(--blue); }
    .hour-strip { display:grid; grid-template-columns:1fr auto 1fr auto 1fr auto 1fr; gap:12px; align-items:center; margin-top:22px; padding:20px; background:var(--ink); color:var(--white); }
    .hour-strip div { display:grid; gap:6px; }
    .hour-strip span { color:#999; font-size:.55rem; font-weight:850; text-transform:uppercase; }
    .hour-strip strong { font-size:.92rem; }
    .hour-strip .final strong { color:var(--yellow); }
    .operator { color:#777!important; font-size:1rem!important; }
    .tabs { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-bottom:18px; }
    .tab { min-height:90px; display:grid; gap:5px; padding:15px; border:1px solid var(--line); background:#f4f2ec; text-align:left; }
    .tab.active { border-color:var(--ink); background:var(--yellow); }
    .tab.rented.active { background:var(--coral); }
    .tab span { font-size:.65rem; font-weight:900; }
    .tab strong { font-size:1.1rem; }
    .tab small { color:var(--muted); font-size:.56rem; }
    .equipment { border-top:1px solid var(--ink); }
    .equipment-head,.equipment-row { display:grid; grid-template-columns:minmax(160px,1.35fr) 1fr .8fr 1fr; gap:14px; align-items:center; }
    .equipment-head { padding:12px 9px; color:var(--muted); font-size:.55rem; font-weight:900; text-transform:uppercase; }
    .equipment-row { padding:13px 9px; border-top:1px solid var(--line); }
    .equipment-row.selected { background:#f7f6f1; }
    .equipment-check { display:flex; align-items:center; gap:9px; font-size:.7rem; font-weight:850; }
    .equipment-check input { width:auto; accent-color:var(--red); }
    .mini-input { display:grid; grid-template-columns:auto 1fr; align-items:center; border:1px solid var(--line); background:var(--white); }
    .mini-input span { padding-left:8px; color:var(--muted); font-size:.62rem; }
    .mini-input input { padding:9px 6px; border:0; background:transparent; }
    .days { display:grid; grid-template-columns:1fr auto; align-items:center; gap:6px; }
    .days input { padding:9px; }
    .days span { color:var(--muted); font-size:.58rem; }
    .equipment-row output { justify-self:end; font-size:.7rem; font-weight:900; }
    .equipment-total { display:flex; justify-content:space-between; gap:20px; padding:17px 10px; border-top:2px solid var(--ink); }
    .equipment-total span { font-size:.65rem; font-weight:900; }
    .equipment-total strong { color:var(--red); }
    .note { margin:15px 0 0; color:var(--muted); font-size:.62rem; line-height:1.55; }
    .job-grid { display:grid; grid-template-columns:1fr 1fr 1fr; gap:12px; }
    .equipment-summary { min-height:92px; display:grid; align-content:center; gap:5px; padding:15px; background:#e6f2f8; }
    .equipment-summary.rented { background:#fff0ec; }
    .equipment-summary span { color:var(--muted); font-size:.56rem; font-weight:900; text-transform:uppercase; }
    .equipment-summary strong { font-size:1rem; }
    .equipment-summary small { color:var(--muted); font-size:.55rem; }
    .result { position:sticky; top:18px; }
    .result-card { padding:27px; background:var(--ink); color:var(--white); }
    .result-top { display:flex; justify-content:space-between; color:#999; font-size:.57rem; font-weight:900; text-transform:uppercase; }
    .main-result { padding:42px 0 28px; border-bottom:1px solid #3b3b3b; }
    .main-result span { color:var(--yellow); font-size:.63rem; font-weight:900; text-transform:uppercase; }
    .main-result strong { display:block; margin-top:12px; color:var(--yellow); font-size:clamp(2.7rem,5vw,4.3rem); line-height:.9; letter-spacing:-.07em; }
    .main-result p { margin:13px 0 0; color:#999; font-size:.61rem; line-height:1.45; }
    .result-pair { display:grid; grid-template-columns:1fr 1fr; gap:1px; margin:20px 0; background:#444; }
    .result-pair div { display:grid; gap:7px; padding:15px; background:#242424; }
    .result-pair span,.breakdown span { color:#999; font-size:.55rem; }
    .result-pair strong { font-size:.92rem; }
    .breakdown { display:grid; gap:10px; margin:20px 0; }
    .breakdown div { display:flex; justify-content:space-between; gap:15px; }
    .breakdown strong { font-size:.66rem; }
    .action { width:100%; min-height:48px; margin-top:8px; border:0; background:var(--red); color:var(--white); font-size:.68rem; font-weight:900; }
    .action.secondary { background:var(--yellow); color:var(--ink); }
    .action.ghost { background:transparent; color:#999; border:1px solid #444; }
    .warning { display:flex; gap:10px; padding:12px; background:#3a211e; color:#ffaaa1; font-size:.6rem; line-height:1.45; }
    .warning[hidden] { display:none; }
    .footnote { color:var(--muted); font-size:.58rem; line-height:1.5; }
    footer { min-height:160px; display:flex; justify-content:space-between; align-items:center; gap:25px; padding:30px max(24px,calc((100vw - 1420px)/2)); background:var(--yellow); }
    footer p { font-family:Georgia,serif; font-size:1.15rem; font-style:italic; }
    .modal { position:fixed; inset:0; z-index:20; display:none; place-items:center; padding:20px; background:rgba(0,0,0,.72); overflow:auto; }
    .modal.open { display:grid; }
    .modal-shell { width:min(1180px,100%); max-height:94vh; display:grid; grid-template-columns:360px 1fr; background:var(--paper); overflow:auto; }
    .proposal-editor { padding:28px; background:var(--ink); color:var(--white); }
    .proposal-editor header { display:flex; justify-content:space-between; align-items:center; margin-bottom:25px; }
    .close { width:40px; height:40px; border:1px solid #555; background:transparent; color:white; font-size:1.4rem; }
    .proposal-editor label { display:grid; gap:6px; margin-bottom:13px; }
    .proposal-editor label span { color:#aaa; font-size:.6rem; font-weight:800; }
    .proposal-editor input,.proposal-editor textarea { background:#292929; border-color:#444; color:white; }
    .proposal-sheet { padding:45px; background:white; }
    .proposal-sheet header { display:flex; justify-content:space-between; gap:20px; padding-bottom:20px; border-bottom:5px solid var(--yellow); }
    .proposal-sheet h2 { margin:45px 0 10px; font-size:clamp(2.4rem,5vw,4.8rem); line-height:.9; letter-spacing:-.065em; }
    .proposal-sheet h2 em { color:var(--red); font-family:Georgia,serif; font-weight:400; }
    .proposal-sheet .project { color:var(--muted); font-size:.68rem; font-weight:900; text-transform:uppercase; }
    .proposal-lines { margin-top:42px; border-top:1px solid var(--ink); }
    .proposal-line { display:flex; justify-content:space-between; gap:25px; padding:16px 0; border-bottom:1px solid var(--line); }
    .proposal-line div { display:grid; gap:5px; }
    .proposal-line span { color:var(--muted); font-size:.62rem; }
    .proposal-total { display:flex; justify-content:space-between; gap:20px; margin-top:18px; padding:22px; background:var(--ink); color:white; }
    .proposal-total strong { color:var(--yellow); font-size:1.8rem; }
    .proposal-details { display:grid; grid-template-columns:1fr 1fr; gap:1px; margin-top:25px; background:var(--line); }
    .proposal-details div { padding:16px; background:#f7f5ef; }
    .proposal-details span { display:block; color:var(--muted); font-size:.57rem; font-weight:900; text-transform:uppercase; }
    .proposal-details strong { display:block; margin-top:7px; font-size:.7rem; line-height:1.4; }
    .proposal-notes { margin-top:22px; color:var(--muted); font-size:.66rem; line-height:1.55; white-space:pre-line; }
    @media(max-width:820px) {
      .topbar,.hero,.workspace { width:min(100% - 30px,680px); }
      .topbar nav a { display:none; }
      .hero { min-height:auto; grid-template-columns:1fr; padding:55px 0 65px; }
      .hero h1 { font-size:clamp(3.4rem,14vw,6rem); }
      .stamp { display:none; }
      .workspace { grid-template-columns:1fr; }
      .result { position:static; grid-row:auto; }
      .grid-3,.job-grid { grid-template-columns:1fr; }
      .hour-strip { grid-template-columns:1fr 1fr; }
      .operator { display:none; }
      .hour-strip .final { grid-column:1/-1; }
      .equipment-head { display:none; }
      .equipment-row { grid-template-columns:1fr 1fr; }
      .equipment-check { grid-column:1/-1; }
      .equipment-row output { grid-column:1/-1; }
      .equipment-row output:before { content:"Subtotal: "; color:var(--muted); font-weight:400; }
      .modal { padding:0; place-items:start; }
      .modal-shell { min-height:100vh; max-height:none; grid-template-columns:1fr; }
      .proposal-sheet { padding:32px 22px; }
    }
    @media(max-width:480px) {
      .card { padding:23px 18px; }
      .tabs { grid-template-columns:1fr; }
      .result-pair,.proposal-details { grid-template-columns:1fr; }
      .proposal-sheet header,.proposal-total,footer { align-items:flex-start; flex-direction:column; }
      footer p { display:none; }
    }
    @media print {
      body * { visibility:hidden!important; }
      .modal,.modal * { visibility:visible!important; }
      .modal { position:absolute; inset:0; display:block!important; padding:0; background:white; }
      .modal-shell { width:100%; max-height:none; display:block; }
      .proposal-editor { display:none; }
      .proposal-sheet { padding:14mm; }
    }
  


    :root { --paper:#f7f5ef; --yellow:#ffe061; --coral:#ff5f5d; --muted:#7f7f7f; --line:rgba(23,23,23,.16); --sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
    body { -webkit-font-smoothing:antialiased; }
    .topbar { min-height:88px; }
    .brand { font-size:2rem; line-height:1; letter-spacing:-.11em; }
    .topbar nav { gap:24px; color:var(--ink); }
    .topbar nav>a { padding-bottom:4px; border-bottom:2px solid var(--blue); font-size:.72rem; }
    .live { gap:9px; font-size:.7rem; letter-spacing:.13em; }
    .live i { width:8px; height:8px; box-shadow:0 0 0 5px rgba(255,44,33,.1); }
    .version-badge { padding:4px 6px; background:var(--ink); color:var(--yellow); font-size:.56rem; font-weight:950; letter-spacing:.08em; }
    .hero { min-height:455px; grid-template-columns:minmax(0,1fr) 280px; gap:80px; padding:72px 0 78px; overflow:hidden; }
    .hero:after { content:""; position:absolute; width:420px; height:420px; right:45px; top:18px; border:1px solid rgba(23,23,23,.08); border-radius:50%; pointer-events:none; }
    .eyebrow { margin-bottom:22px; padding:8px 12px; background:var(--yellow); font-size:.72rem; }
    .hero h1 { max-width:980px; font-size:clamp(3.4rem,7.4vw,7.4rem); line-height:.82; letter-spacing:-.075em; font-weight:950; }
    .hero-copy>p:last-child { max-width:610px; margin-top:34px; color:#5e5e5e; font-family:var(--sans); font-size:1.05rem; line-height:1.65; }
    .stamp { width:205px; height:205px; position:relative; z-index:1; background:var(--blue); box-shadow:12px 15px 0 var(--yellow); transform:rotate(7deg); }
    .stamp span { font-size:.68rem; letter-spacing:.08em; }
    .stamp strong { margin-top:3px; font-size:1.25rem; text-transform:uppercase; letter-spacing:.08em; }
    .stamp b { margin-top:16px; color:var(--white); font-size:1.55rem; }
    .workspace { grid-template-columns:minmax(0,1fr) 410px; gap:24px; margin-bottom:100px; }
    .form-column { gap:20px; }
    .card { padding:clamp(25px,4vw,44px); border:1px solid var(--line); border-top:7px solid var(--yellow); box-shadow:0 8px 24px rgba(23,23,23,.035); }
    .card.blue { border-top-color:var(--blue); }
    .card.coral { border-top-color:var(--coral); }
    .card.red { border-top-color:var(--red); }
    .section-title { grid-template-columns:46px 1fr; gap:13px; margin-bottom:34px; }
    .section-title>span { padding-top:5px; color:var(--muted); font-size:.72rem; letter-spacing:.1em; }
    .section-title h2 { font-size:clamp(1.5rem,3vw,2rem); line-height:1; }
    .section-title p { margin-top:9px; font-size:.9rem; line-height:1.45; }
    .grid-3 { gap:17px; }
    .field { gap:8px; }
    .field>span:first-child { min-height:34px; font-size:.76rem; line-height:1.35; }
    .input-wrap { transition:border-color 160ms,box-shadow 160ms; }
    .input-wrap:focus-within { border-color:var(--blue); box-shadow:0 0 0 3px rgba(99,178,222,.16); }
    .input-wrap b { padding-left:13px; font-size:.75rem; }
    .input-wrap input { padding:14px 13px 14px 8px; font-weight:760; }
    input[type=number] { appearance:textfield; }
    input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button { appearance:none; margin:0; }
    .hour-strip { grid-template-columns:1fr auto 1fr auto 1fr auto 1.3fr; gap:13px; margin-top:28px; padding:20px 22px; }
    .hour-strip div { gap:6px; }
    .hour-strip span { font-size:.64rem; letter-spacing:.07em; }
    .hour-strip strong { font-size:.96rem; }
    .hour-strip .final { min-height:64px; margin:-6px; padding:10px 14px; justify-content:center; background:var(--yellow); color:var(--ink); transform:rotate(-1deg); }
    .hour-strip .final span { color:rgba(23,23,23,.62); }
    .hour-strip .final strong { color:var(--ink); font-size:1.2rem; }
    .tabs { gap:8px; padding:6px; background:#efede6; }
    .tab { min-height:0; padding:16px 18px; border:1px solid transparent; background:transparent; transition:background 160ms,transform 160ms; }
    .tab:hover { background:rgba(255,255,255,.65); }
    .tab.active { border-color:transparent; background:var(--blue); transform:translateY(-2px); box-shadow:0 5px 0 rgba(23,23,23,.12); }
    .tab.rented.active { background:var(--coral); }
    .tab span { font-size:.72rem; }
    .tab strong { margin:7px 0 5px; font-size:1.13rem; }
    .tab small { font-size:.62rem; font-style:normal; font-weight:750; }
    .equipment { margin-top:14px; border:1px solid var(--line); }
    .equipment-head,.equipment-row { grid-template-columns:minmax(170px,1.35fr) minmax(130px,.85fr) 90px minmax(105px,.7fr); gap:14px; }
    .equipment-head { padding:12px 15px; background:#f6f4ed; font-size:.6rem; letter-spacing:.07em; }
    .equipment-head span:last-child { text-align:right; }
    .equipment-row { min-height:66px; padding:10px 15px; border-top:1px solid var(--line); color:#a2a2a2; transition:background 160ms,color 160ms; }
    .equipment-row.selected { background:#f9fcfd; color:var(--ink); }
    .equipment-check { position:relative; gap:11px; font-size:inherit; }
    .equipment-check input { position:absolute; width:1px; height:1px; opacity:0; }
    .check-box { width:24px; height:24px; flex:0 0 auto; display:grid; place-items:center; border:1px solid #b9b9b9; background:white; color:transparent; font-size:.76rem; font-weight:950; }
    .equipment-check input:checked+.check-box { border-color:var(--ink); background:var(--ink); color:white; }
    .equipment-check strong { font-size:.82rem; }
    .mini-input { border:0; border-bottom:1px solid rgba(23,23,23,.22); background:transparent; }
    .mini-input span { padding-left:0; font-size:.67rem; font-weight:800; }
    .mini-input input { padding:9px 6px; font-weight:780; }
    .days { border-bottom:1px solid rgba(23,23,23,.22); }
    .days input { padding:9px 6px; border:0; background:transparent; font-weight:780; }
    .days span { font-size:.62rem; font-weight:750; }
    .equipment-row output { font-size:.82rem; }
    .equipment-total { padding:18px 15px; border-top:2px solid var(--ink); background:var(--ink); color:white; }
    .equipment-total span { font-size:.68rem; }
    .equipment-total strong { color:var(--yellow); font-size:1.12rem; }
    .note { margin-top:17px; font-size:.7rem; }
    .market-reference-row { display:grid; grid-template-columns:minmax(220px,.85fr) minmax(0,1fr); gap:18px; align-items:stretch; }
    .market-reference-note { display:flex; flex-direction:column; justify-content:center; gap:8px; min-height:94px; padding:18px 20px; border-left:5px solid var(--coral); background:#fff4f1; }
    .market-reference-note>span { color:var(--coral); font-size:.65rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
    .market-reference-note p { margin:0; color:#5e5e5e; font-size:.72rem; line-height:1.5; }
    .job-grid { grid-template-columns:.85fr 1fr 1fr; gap:16px; }
    .equipment-summary { min-height:100px; padding:16px 18px; border:1px solid var(--line); border-top:5px solid var(--blue); background:rgba(99,178,222,.08); }
    .equipment-summary.rented { border-top-color:var(--coral); background:rgba(255,95,93,.08); }
    .equipment-summary span { font-size:.66rem; text-transform:none; }
    .equipment-summary strong { margin:7px 0 5px; font-size:1.15rem; }
    .equipment-summary small { font-size:.62rem; }
    .result { top:20px; }
    .result-card { padding:28px; box-shadow:0 16px 40px rgba(23,23,23,.15); }
    .result-top { padding-bottom:22px; border-bottom:1px solid #383838; font-size:.67rem; letter-spacing:.11em; }
    .result-top span:last-child { color:var(--yellow); }
    .main-result { padding:32px 0 29px; border-bottom:0; }
    .main-result span { color:#a8a8a8; font-size:.74rem; text-transform:none; }
    .main-result strong { margin:8px 0 9px; font-size:clamp(2.6rem,4.5vw,4rem); line-height:.95; white-space:nowrap; }
    .main-result p { max-width:260px; margin:0; font-size:.69rem; }
    .result-pair { margin:0; border:1px solid #3b3b3b; }
    .result-pair div { padding:18px 15px; }
    .result-pair span { min-height:28px; font-size:.62rem; font-weight:800; }
    .result-pair strong { margin-top:8px; font-size:1.02rem; }
    .warning { margin-top:15px; align-items:center; background:rgba(255,95,93,.14); color:#ffc2c0; font-size:.66rem; }
    .warning>span { width:24px; height:24px; flex:0 0 auto; display:grid; place-items:center; border-radius:50%; background:var(--coral); color:var(--ink); font-weight:950; }
    .warning p { margin:0; }
    .breakdown { gap:11px; margin:24px 0; padding:19px 0; border-top:1px solid #393939; border-bottom:1px solid #393939; }
    .breakdown span,.breakdown strong { font-size:.69rem; }
    .action { min-height:50px; font-weight:900; }
    .action.secondary { min-height:44px; border:1px solid #494949; background:#262626; color:#d7d7d7; font-size:.7rem; }
    .action.ghost { min-height:40px; border:0; color:#838383; font-size:.68rem; }
    .footnote { margin:14px 4px 0; font-size:.64rem; }
    footer { min-height:180px; display:grid; grid-template-columns:1fr auto 1fr; padding:30px max(24px,calc((100vw - 1420px)/2)); }
    footer .brand { font-size:2.4rem; }
    footer p { font-size:1.25rem; }
    footer>strong { justify-self:end; font-size:.67rem; letter-spacing:.1em; text-transform:uppercase; }
    .modal { z-index:100; place-items:center; padding:24px; background:rgba(17,17,17,.82); backdrop-filter:blur(8px); }
    .proposal-modal { width:min(1320px,100%); height:min(920px,calc(100vh - 48px)); overflow:hidden; background:#e7e4dc; box-shadow:0 30px 90px rgba(0,0,0,.38); }
    .proposal-toolbar { min-height:70px; display:flex; justify-content:space-between; align-items:center; gap:24px; padding:15px 20px 15px 28px; background:var(--ink); color:var(--white); }
    .proposal-toolbar>div { display:flex; flex-direction:column; gap:4px; }
    .proposal-toolbar span { color:var(--yellow); font-size:.62rem; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
    .proposal-toolbar strong { font-size:.82rem; }
    .proposal-close { width:40px; height:40px; border:1px solid #4b4b4b; background:transparent; color:var(--white); cursor:pointer; font-size:1.65rem; line-height:1; }
    .proposal-close:hover { background:var(--red); border-color:var(--red); }
    .proposal-layout { height:calc(100% - 70px); display:grid; grid-template-columns:340px minmax(0,1fr); overflow:hidden; }
    .proposal-editor { overflow-y:auto; padding:28px 24px; background:var(--paper); color:var(--ink); border-right:1px solid var(--line); }
    .proposal-editor-kicker { margin:0 0 22px; color:var(--muted); font-size:.65rem; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
    .proposal-editor label { display:grid; gap:7px; margin-bottom:16px; }
    .proposal-editor label>span { color:var(--ink); font-size:.68rem; font-weight:850; }
    .proposal-editor input,.proposal-editor textarea { width:100%; border:1px solid var(--line); background:var(--white); color:var(--ink); padding:12px; font-size:.77rem; line-height:1.45; resize:vertical; }
    .proposal-editor input:focus,.proposal-editor textarea:focus { border-color:var(--blue); outline:3px solid rgba(99,178,222,.18); }
    .proposal-actions { display:grid; gap:8px; margin-top:24px; }
    .proposal-actions button { min-height:48px; border:0; cursor:pointer; font-weight:900; }
    .proposal-primary { background:var(--red); color:var(--white); }
    .proposal-primary:hover { background:var(--coral); }
    .proposal-secondary { background:var(--ink); color:var(--white); }
    .proposal-sheet { align-self:start; justify-self:center; width:min(820px,calc(100% - 48px)); height:calc(100% - 48px); margin:24px; overflow-y:auto; padding:50px 54px 42px; background:var(--white); color:var(--ink); box-shadow:0 14px 38px rgba(23,23,23,.12); }
    .proposal-sheet-header { display:flex; justify-content:space-between; align-items:flex-start; gap:30px; padding-bottom:28px; border-bottom:1px solid var(--line); }
    .proposal-company { max-width:65%; font-size:1.5rem; font-weight:950; letter-spacing:-.06em; overflow-wrap:anywhere; }
    .proposal-company span { color:var(--red); }
    .proposal-date { display:flex; flex-direction:column; gap:5px; text-align:right; }
    .proposal-date span { color:var(--muted); font-size:.56rem; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
    .proposal-date strong { font-size:.65rem; text-transform:capitalize; }
    .proposal-hero { padding:52px 0 38px; }
    .proposal-hero>p { width:fit-content; margin:0 0 15px; padding:6px 9px; background:var(--yellow); font-size:.58rem; font-weight:900; letter-spacing:.09em; text-transform:uppercase; transform:rotate(-1deg); }
    .proposal-hero h2 { margin:0; font-size:clamp(2.45rem,5vw,4.25rem); line-height:.9; letter-spacing:-.065em; }
    .proposal-hero h2 em { color:var(--red); font-family:Georgia,"Times New Roman",serif; font-weight:400; }
    .proposal-project-tag { margin-top:25px; color:var(--muted); font-size:.7rem; font-weight:800; }
    .proposal-intro { display:grid; grid-template-columns:120px 1fr; gap:25px; padding:25px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
    .proposal-intro>span,.proposal-notes>span { color:var(--muted); font-size:.58rem; font-weight:900; letter-spacing:.09em; text-transform:uppercase; }
    .proposal-intro p { margin:0; color:#525252; font-size:.75rem; line-height:1.65; }
    .proposal-scope { padding-top:38px; }
    .proposal-section-title { display:flex; gap:14px; align-items:baseline; margin-bottom:20px; }
    .proposal-section-title span { color:var(--red); font-size:.58rem; font-weight:900; }
    .proposal-section-title h3 { margin:0; font-size:1.2rem; letter-spacing:-.035em; }
    .proposal-items { border-top:1px solid var(--ink); }
    .proposal-item { display:flex; justify-content:space-between; gap:30px; align-items:center; padding:17px 0; border-bottom:1px solid var(--line); }
    .proposal-item>div { display:flex; flex-direction:column; gap:5px; }
    .proposal-item strong { font-size:.75rem; }
    .proposal-item span { color:var(--muted); font-size:.63rem; }
    .proposal-item b { flex:0 0 auto; font-size:.78rem; }
    .proposal-total { display:flex; justify-content:space-between; gap:30px; align-items:center; margin-top:16px; padding:24px; background:var(--ink); color:var(--white); }
    .proposal-total>div { display:flex; flex-direction:column; gap:5px; }
    .proposal-total span { color:var(--yellow); font-size:.66rem; font-weight:900; text-transform:uppercase; letter-spacing:.08em; }
    .proposal-total small { color:#999; font-size:.58rem; }
    .proposal-total>strong { color:var(--yellow); font-size:clamp(1.65rem,3vw,2.35rem); letter-spacing:-.05em; white-space:nowrap; }
    .proposal-conditions { display:grid; grid-template-columns:1fr 1fr; gap:1px; margin-top:28px; background:var(--line); border:1px solid var(--line); }
    .proposal-condition { display:flex; flex-direction:column; gap:8px; min-height:90px; padding:18px; background:#f7f5ef; }
    .proposal-condition span { color:var(--muted); font-size:.57rem; font-weight:900; text-transform:uppercase; letter-spacing:.08em; }
    .proposal-condition strong { font-size:.7rem; line-height:1.45; }
    .proposal-notes { display:grid; grid-template-columns:120px 1fr; gap:25px; margin-top:28px; padding-top:20px; border-top:1px solid var(--line); }
    .proposal-notes p { margin:0; color:var(--muted); font-size:.63rem; line-height:1.55; white-space:pre-line; }
    .proposal-sheet-footer { min-height:0; display:flex; justify-content:space-between; align-items:initial; gap:25px; margin-top:44px; padding:20px 0 0; border-top:5px solid var(--yellow); background:transparent; }
    .proposal-sheet-footer strong { font-size:.7rem; }
    .proposal-sheet-footer span { color:var(--muted); font-family:Georgia,"Times New Roman",serif; font-size:.75rem; font-style:italic; }
    @media(max-width:1100px) { .hero { grid-template-columns:1fr 190px; gap:30px; } .stamp { width:165px; height:165px; } .workspace { grid-template-columns:minmax(0,1fr) 350px; } .grid-3 { grid-template-columns:1fr 1fr; } .grid-3 .field:last-child { grid-column:1/-1; } .job-grid { grid-template-columns:1fr 1fr; } .job-grid .field { grid-column:1/-1; } }
    @media(max-width:820px) { .topbar { min-height:72px; } .topbar nav a { display:block; } .hero { min-height:auto; grid-template-columns:1fr; padding:58px 0 68px; } .hero:after,.stamp { display:none; } .hero h1 { font-size:clamp(3.4rem,14vw,6rem); } .hero-copy>p:last-child { margin-top:26px; font-size:.95rem; } .result { position:static; grid-row:auto; } .grid-3 { grid-template-columns:1fr; } .grid-3 .field:last-child,.job-grid .field { grid-column:auto; } .field>span:first-child { min-height:auto; } .equipment-head { display:none; } .equipment-row { grid-template-columns:1fr 1fr; gap:9px 16px; padding:15px; } .equipment-check { grid-column:1/-1; } .equipment-row output { grid-column:1/-1; } .job-grid,.market-reference-row { grid-template-columns:1fr; } .modal { place-items:start; padding:0; overflow-y:auto; } .proposal-modal { width:100%; height:auto; min-height:100vh; overflow:visible; } .proposal-toolbar { position:sticky; top:0; z-index:2; } .proposal-layout { height:auto; grid-template-columns:1fr; overflow:visible; } .proposal-editor { overflow:visible; border-right:0; border-bottom:1px solid var(--line); } .proposal-sheet { width:calc(100% - 30px); height:auto; margin:15px; overflow:visible; padding:38px 30px; } footer { grid-template-columns:1fr auto; min-height:150px; } footer p { display:none; } .proposal-sheet-footer { min-height:0; display:flex; padding:20px 0 0; } }
    @media(max-width:480px) { .hero { padding-top:44px; } .hero h1 { font-size:clamp(3rem,16vw,4.3rem); } .hour-strip { grid-template-columns:1fr 1fr; padding:17px; } .hour-strip .final { grid-column:1/-1; } .result-pair,.tabs,.proposal-conditions { grid-template-columns:1fr; } .proposal-intro,.proposal-notes { grid-template-columns:1fr; gap:10px; } .proposal-total { align-items:flex-start; flex-direction:column; gap:15px; } .proposal-sheet-footer { flex-direction:column; gap:8px; } }
    @media print { @page { size:A4; margin:0; } body { background:#fff; } body * { visibility:hidden!important; } .modal,.modal * { visibility:visible!important; } .modal { position:absolute; inset:0; display:block!important; padding:0; overflow:visible; background:#fff; backdrop-filter:none; } .proposal-modal { width:100%; height:auto; overflow:visible; background:#fff; box-shadow:none; } .proposal-toolbar,.proposal-editor { display:none!important; } .proposal-layout { display:block; height:auto; overflow:visible; } .proposal-sheet { width:100%; height:auto; margin:0; padding:14mm 15mm; overflow:visible; box-shadow:none; } .proposal-hero { padding-top:36px; } }
  


    html, body { max-width:100%; overflow-x:hidden; }
    img, video, iframe { max-width:100%; }

    @media (max-width:820px) {
      .topbar,
      .hero,
      .workspace {
        width:min(100% - 30px,680px);
      }

      .topbar {
        min-height:0;
        padding:18px 0;
        flex-wrap:wrap;
        row-gap:16px;
      }

      .topbar .brand {
        flex:0 0 auto;
      }

      .topbar nav {
        width:100%;
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:9px;
        order:2;
      }

      .topbar nav > a {
        min-width:0;
        display:block;
        padding:10px 8px;
        border:1px solid var(--line);
        border-bottom:3px solid var(--blue);
        background:rgba(255,255,255,.55);
        font-size:.62rem;
        line-height:1.25;
        text-align:center;
      }

      .topbar .live {
        grid-column:1 / -1;
        justify-content:center;
        padding-top:5px;
        font-size:.61rem;
      }

      .hero {
        padding:48px 0 58px;
      }

      .hero h1 {
        max-width:100%;
        font-size:clamp(3rem,14vw,5rem);
        line-height:.88;
        letter-spacing:-.065em;
        overflow-wrap:break-word;
      }

      .hero-copy > p:last-child {
        max-width:100%;
      }

      .workspace {
        gap:16px;
        margin-bottom:55px;
      }

      .card {
        min-width:0;
        padding:26px 21px;
      }

      .section-title {
        grid-template-columns:34px minmax(0,1fr);
        gap:10px;
        margin-bottom:27px;
      }

      .section-title h2 {
        overflow-wrap:anywhere;
      }

      .grid-3,
      .job-grid,
      .market-reference-row {
        grid-template-columns:minmax(0,1fr);
      }

      .grid-3 .field:last-child,
      .job-grid .field {
        grid-column:auto;
      }

      .field,
      .input-wrap,
      .equipment-summary,
      .market-reference-note {
        min-width:0;
      }

      .hour-strip {
        grid-template-columns:minmax(0,1fr) minmax(0,1fr);
        gap:12px;
        padding:18px;
      }

      .hour-strip .operator {
        display:none;
      }

      .hour-strip .final {
        grid-column:1 / -1;
        width:100%;
        min-width:0;
        margin:0;
      }

      .tabs {
        width:100%;
      }

      .tab {
        min-width:0;
      }

      .equipment {
        width:100%;
        min-width:0;
      }

      .equipment-row {
        grid-template-columns:minmax(0,1fr) minmax(0,1fr);
        gap:12px 14px;
      }

      .equipment-check {
        grid-column:1 / -1;
        min-width:0;
      }

      .equipment-row output {
        grid-column:1 / -1;
        width:100%;
        justify-self:stretch;
        padding-top:4px;
        text-align:right;
      }

      .mini-input,
      .days {
        width:100%;
        min-width:0;
      }

      .mini-input input,
      .days input {
        width:100%;
        min-width:0;
      }

      .equipment-total {
        align-items:center;
      }

      .equipment-total span {
        max-width:60%;
        line-height:1.35;
      }

      .result {
        width:100%;
        min-width:0;
        position:static;
        grid-row:auto;
        order:2;
      }

      .form-column { order:1; }

      .result-card {
        min-width:0;
        padding:25px 21px;
      }

      .main-result strong {
        max-width:100%;
        font-size:clamp(2.45rem,12vw,4rem);
        white-space:normal;
        overflow-wrap:anywhere;
      }

      .result-pair {
        min-width:0;
      }

      .result-pair div,
      .breakdown div {
        min-width:0;
      }

      .result-pair strong,
      .breakdown strong {
        text-align:right;
        overflow-wrap:anywhere;
      }

      footer {
        min-width:0;
      }

      body > footer {
        width:100%;
        padding-inline:20px;
      }

      .modal {
        width:100%;
        max-width:100%;
      }

      .proposal-modal,
      .proposal-layout,
      .proposal-editor,
      .proposal-sheet {
        min-width:0;
        max-width:100%;
      }

      .proposal-toolbar {
        min-width:0;
        padding:14px 15px;
      }

      .proposal-toolbar > div {
        min-width:0;
      }

      .proposal-toolbar strong {
        max-width:calc(100vw - 85px);
        font-size:.72rem;
        line-height:1.35;
      }

      .proposal-editor {
        padding:25px 20px;
      }

      .proposal-sheet {
        width:calc(100% - 24px);
        margin:12px;
        padding:34px 24px;
      }

      .proposal-sheet-header {
        min-width:0;
      }

      .proposal-company {
        min-width:0;
        overflow-wrap:anywhere;
      }

      .proposal-hero h2 {
        max-width:100%;
        font-size:clamp(2.2rem,11vw,4.25rem);
        overflow-wrap:anywhere;
      }

      .proposal-item,
      .proposal-total,
      .proposal-condition {
        min-width:0;
      }

      .proposal-item b,
      .proposal-total > strong {
        max-width:100%;
        white-space:normal;
        overflow-wrap:anywhere;
      }
    }

    @media (max-width:520px) {
      .topbar,
      .hero,
      .workspace {
        width:calc(100% - 24px);
      }

      .topbar nav {
        grid-template-columns:minmax(0,1fr);
      }

      .topbar .live {
        grid-column:auto;
      }

      .hero {
        padding:40px 0 48px;
      }

      .hero h1 {
        font-size:clamp(2.65rem,14vw,4rem);
        line-height:.9;
      }

      .eyebrow {
        max-width:100%;
        font-size:.62rem;
        line-height:1.35;
      }

      .card {
        padding:23px 17px;
      }

      .section-title {
        grid-template-columns:27px minmax(0,1fr);
      }

      .section-title h2 {
        font-size:1.45rem;
        line-height:1.08;
      }

      .section-title p {
        font-size:.78rem;
      }

      .hour-strip {
        grid-template-columns:minmax(0,1fr);
      }

      .hour-strip .final {
        grid-column:auto;
      }

      .tabs {
        grid-template-columns:minmax(0,1fr);
        padding:5px;
      }

      .equipment-row {
        grid-template-columns:minmax(0,1fr);
        padding:15px 12px;
      }

      .equipment-check,
      .equipment-row output {
        grid-column:auto;
      }

      .equipment-row output {
        padding:10px 0 0;
        border-top:1px dashed var(--line);
      }

      .equipment-total {
        align-items:flex-start;
        flex-direction:column;
        gap:8px;
      }

      .equipment-total span {
        max-width:100%;
      }

      .equipment-total strong {
        align-self:flex-end;
      }

      .market-reference-note {
        padding:16px;
      }

      .result-card {
        padding:23px 17px;
      }

      .result-top {
        gap:12px;
      }

      .main-result {
        padding:28px 0 24px;
      }

      .main-result strong {
        font-size:clamp(2.15rem,12vw,3.2rem);
      }

      .result-pair {
        grid-template-columns:minmax(0,1fr);
      }

      .breakdown div {
        align-items:flex-start;
      }

      .breakdown span {
        max-width:58%;
        line-height:1.4;
      }

      .action {
        height:auto;
        min-height:50px;
        padding:13px 12px;
        line-height:1.3;
      }

      body > footer {
        display:grid;
        grid-template-columns:minmax(0,1fr);
        gap:14px;
        min-height:0;
        padding:34px 20px;
      }

      body > footer .brand,
      body > footer > strong {
        justify-self:start;
      }

      .proposal-toolbar span {
        font-size:.55rem;
      }

      .proposal-toolbar strong {
        max-width:calc(100vw - 78px);
        font-size:.65rem;
      }

      .proposal-close {
        width:38px;
        height:38px;
        flex:0 0 38px;
      }

      .proposal-sheet {
        width:calc(100% - 16px);
        margin:8px;
        padding:30px 18px;
      }

      .proposal-sheet-header {
        align-items:flex-start;
        flex-direction:column;
        gap:14px;
      }

      .proposal-company {
        max-width:100%;
      }

      .proposal-date {
        text-align:left;
      }

      .proposal-hero {
        padding:38px 0 30px;
      }

      .proposal-intro,
      .proposal-notes {
        grid-template-columns:minmax(0,1fr);
        gap:10px;
      }

      .proposal-item {
        align-items:flex-start;
        flex-direction:column;
        gap:10px;
      }

      .proposal-item b {
        align-self:flex-end;
      }

      .proposal-conditions {
        grid-template-columns:minmax(0,1fr);
      }

      .proposal-total {
        align-items:flex-start;
        flex-direction:column;
        gap:15px;
      }

      .proposal-sheet-footer {
        align-items:flex-start;
        flex-direction:column;
        gap:8px;
      }
    }

    @media (max-width:360px) {
      .topbar,
      .hero,
      .workspace {
        width:calc(100% - 18px);
      }

      .hero h1 {
        font-size:2.55rem;
      }

      .card,
      .result-card {
        padding-inline:14px;
      }

      .section-title {
        grid-template-columns:1fr;
      }

      .section-title > span {
        padding-top:0;
      }

      .main-result strong {
        font-size:2rem;
      }
    }
  /* Integração WordPress — V2 */
body.admin-bar .modal{top:32px}
.wp-ad-banner{width:min(1420px,calc(100% - 48px));margin:0 auto 24px;padding:16px;border:1px dashed rgba(23,23,23,.28);background:rgba(255,255,255,.6);text-align:center}
.wp-ad-banner .widget{margin:0;list-style:none}
.wp-ad-banner.calculator-ad{width:min(970px,calc(100% - 48px));min-height:120px;margin:-55px auto 70px;display:grid;align-content:center;gap:10px;overflow:hidden}
.wp-ad-banner.calculator-ad>span{color:#646464;font-size:.54rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.price-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
.price-option{min-width:0;padding:14px 9px;border:1px solid #3b3b3b;background:#242424;color:#fff;cursor:pointer;text-align:left}
.price-option.active{border-color:#ffd814;background:#303020;box-shadow:inset 0 -3px 0 #ffd814}
.price-option span{display:block;color:#999;font-size:.58rem;font-weight:800}.price-option strong{display:block;margin-top:6px;font-size:.78rem;overflow-wrap:anywhere}
.custom-price{display:grid;gap:8px;margin-top:10px;padding:13px 14px;border:1px solid #3b3b3b;background:#202020}.custom-price.active{border-color:#63b2de;box-shadow:inset 4px 0 0 #63b2de}.custom-price>span:first-child{color:#aaa;font-size:.61rem;font-weight:850}.custom-price>span:last-child{display:flex;align-items:center;gap:7px}.custom-price i{color:#ffd814;font-size:.72rem;font-style:normal;font-weight:900}.custom-price input{width:100%;min-width:0;border:0;border-bottom:1px solid #5b5b5b;outline:0;background:transparent;color:#fff;font-size:1.15rem;font-weight:900}
.proposal-logo-field,.proposal-extra-editor{display:grid;gap:9px;margin-bottom:18px}.proposal-logo-field>span,.proposal-extra-editor>span{font-size:.68rem;font-weight:850}.proposal-logo-field>label{position:relative;display:grid!important;gap:3px!important;margin:0!important;padding:13px;border:1px dashed #9c978d;background:#fff;cursor:pointer}.proposal-logo-field input[type=file]{position:absolute;width:1px;height:1px;padding:0;opacity:0}.proposal-logo-field small,.proposal-extra-editor>small{color:#646464;font-size:.57rem}.proposal-logo-field>button{width:fit-content;border:0;border-bottom:1px solid #e23b31;background:transparent;color:#e23b31;cursor:pointer;font-size:.58rem;font-weight:850}
.proposal-extra-editor{padding:15px;border-left:4px solid #63b2de;background:rgba(99,178,222,.08)}.proposal-extra-editor>div{display:grid;grid-template-columns:minmax(0,1fr) 104px;gap:7px}.proposal-extra-editor>div>label{display:flex;align-items:center;gap:4px;margin:0;padding-left:8px;border:1px solid #ddd;background:#fff}.proposal-extra-editor i{color:#646464;font-size:.58rem;font-style:normal;font-weight:850}.proposal-extra-editor>div>label input{min-width:0;border:0;padding-left:0}
.proposal-brand-lockup{max-width:65%;display:flex;align-items:center;gap:16px}.proposal-brand-lockup img{width:auto;max-width:145px;height:auto;max-height:64px;object-fit:contain}.proposal-brand-lockup .proposal-company{max-width:100%}
@media(max-width:520px){.price-options{grid-template-columns:1fr}.wp-ad-banner.calculator-ad{width:calc(100% - 24px);margin:-35px auto 55px}.proposal-brand-lockup{max-width:100%;flex-wrap:wrap}}
.wp-site-main{min-height:65vh}
.wp-page-shell{width:min(1180px,calc(100% - 48px));margin:0 auto;padding:70px 0 90px}
.wp-site-header{width:min(1420px,calc(100% - 48px));min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 auto;border-bottom:1px solid var(--line)}
.wp-site-nav{display:flex;align-items:center;gap:22px;font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.wp-site-nav a{padding-bottom:4px;border-bottom:2px solid var(--blue)}
.wp-blog-hero{width:min(1180px,calc(100% - 48px));margin:0 auto;padding:84px 0 64px}
.wp-blog-hero .eyebrow{margin-bottom:20px}
.wp-blog-hero h1{max-width:850px;margin:0;font-size:clamp(3.5rem,8vw,7rem);line-height:.85;letter-spacing:-.07em}
.wp-blog-hero h1 em{color:var(--red);font-family:Georgia,"Times New Roman",serif;font-weight:400}
.wp-blog-hero p:last-child{max-width:630px;margin:28px 0 0;color:#5e5e5e;font-size:1rem;line-height:1.65}
.wp-post-layout{width:min(1180px,calc(100% - 48px));display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px;align-items:start;margin:0 auto 90px}
.wp-post-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.wp-post-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-top:7px solid var(--yellow);background:var(--white)}
.wp-post-card:nth-child(3n+2){border-top-color:var(--blue)}
.wp-post-card:nth-child(3n){border-top-color:var(--coral)}
.wp-post-card-image{display:block;aspect-ratio:16/9;overflow:hidden;background:#e8e5dc}
.wp-post-card-image img{width:100%;height:100%;display:block;object-fit:cover}
.wp-post-card-copy{padding:26px}
.wp-post-meta{color:var(--muted);font-size:.61rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.wp-post-card h2{margin:13px 0 12px;font-size:1.55rem;line-height:1.05;letter-spacing:-.045em}
.wp-post-card p{margin:0;color:#5e5e5e;font-size:.78rem;line-height:1.6}
.wp-read-more{display:inline-block;margin-top:20px;color:var(--red);font-size:.7rem;font-weight:900;text-transform:uppercase}
.wp-sidebar{display:grid;gap:18px;position:sticky;top:20px}
.wp-widget{padding:24px;border:1px solid var(--line);background:var(--white)}
.wp-widget h2,.wp-widget-title{margin:0 0 15px;font-size:1rem}
.wp-widget ul{margin:0;padding-left:18px}
.wp-widget li{margin:9px 0;font-size:.75rem}
.wp-empty{grid-column:1/-1;padding:40px;border:1px solid var(--line);background:var(--white)}
.wp-pagination{grid-column:1/-1;margin-top:20px}
.wp-pagination .nav-links{display:flex;flex-wrap:wrap;gap:8px}
.wp-pagination a,.wp-pagination span{min-width:38px;padding:10px;background:var(--white);border:1px solid var(--line);text-align:center}
.wp-pagination .current{background:var(--ink);color:var(--yellow)}
.wp-article{width:min(820px,calc(100% - 48px));margin:0 auto;padding:75px 0 100px}
.wp-article-header{padding-bottom:35px;border-bottom:1px solid var(--line)}
.wp-article-header h1{margin:16px 0 22px;font-size:clamp(2.8rem,7vw,5.6rem);line-height:.9;letter-spacing:-.065em}
.wp-article-content{padding-top:35px;color:#3f3f3f;font-size:1rem;line-height:1.8}
.wp-article-content h2,.wp-article-content h3{color:var(--ink);line-height:1.1;letter-spacing:-.04em}
.wp-article-content img{max-width:100%;height:auto}
.wp-article-content a{color:var(--red);text-decoration:underline}
.wp-article-content blockquote{margin:30px 0;padding:20px 24px;border-left:6px solid var(--yellow);background:var(--white)}
.wp-site-footer{min-height:170px;display:grid;grid-template-columns:1fr auto 1fr;gap:30px;align-items:center;padding:30px max(24px,calc((100vw - 1420px)/2));background:var(--yellow)}
.wp-site-footer>span:last-child{justify-self:end;font-size:.67rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.alignwide{width:min(1100px,100%);margin-left:auto;margin-right:auto}
.alignfull{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw)}
.wp-caption,.wp-caption img{max-width:100%}
.wp-caption-text{color:var(--muted);font-size:.75rem}
@media(max-width:820px){
body.admin-bar .modal{top:46px}
.wp-ad-banner,.wp-site-header,.wp-blog-hero,.wp-post-layout,.wp-article,.wp-page-shell{width:min(100% - 30px,680px)}
.wp-site-header{min-height:72px;flex-wrap:wrap;padding:16px 0}
.wp-site-nav{width:100%;justify-content:space-between;order:2}
.wp-blog-hero{padding:58px 0 48px}
.wp-post-layout{grid-template-columns:minmax(0,1fr)}
.wp-sidebar{position:static}
.wp-post-grid{grid-template-columns:minmax(0,1fr)}
.wp-site-footer{grid-template-columns:1fr auto}
.wp-site-footer p{display:none}
}
@media(max-width:520px){
body.admin-bar .modal{top:0}
.wp-ad-banner,.wp-site-header,.wp-blog-hero,.wp-post-layout,.wp-article,.wp-page-shell{width:calc(100% - 24px)}
.wp-site-nav{align-items:flex-start;flex-direction:column;gap:12px}
.wp-blog-hero h1{font-size:3.1rem}
.wp-post-card-copy{padding:22px 18px}
.wp-article{padding:48px 0 70px}
.wp-article-header h1{font-size:2.8rem}
.wp-site-footer{grid-template-columns:minmax(0,1fr);gap:14px;min-height:0;padding:34px 20px}
.wp-site-footer>span:last-child{justify-self:start}
}
@media print{
body:not(.hup-calculator-page) *{visibility:visible!important}
body:not(.hup-calculator-page) .wp-site-header,body:not(.hup-calculator-page) .wp-site-footer,body:not(.hup-calculator-page) .wp-sidebar{display:none!important}
}
