/*
Theme Name: The Agency Realty
Theme URI: https://theagencyrealty.cl
Author: The Agency Realty
Author URI: https://theagencyrealty.cl
Description: Sitio web de corretaje de propiedades: buscador, fichas, agenda de visitas, tasaciones, blog y panel de propiedades.
Version: 1.1.1
Requires at least: 6.0
Requires PHP: 7.4
License: Propietario
Text Domain: theagencyrealty
*/

:root{
  --gold:#b8975a; --gold-l:#d2b479; --gold-d:#9a7c45;
  --char:#2b2d31; --char2:#34373c; --cline:#4a4d53;
  --light:#f5f3ef; --line:#e4e0d8;
  --ink:#2b2d31; --body:#5d5f63; --mute:#8d8f93; --ctxt:#d8d6d1;
  --serif:'Cormorant Garamond',Georgia,serif; --sans:'Montserrat',Arial,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);background:var(--light);color:var(--body);font-weight:400;line-height:1.65;font-size:15px}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
button,input,select,textarea{font-family:inherit}
.wrap{max-width:1240px;margin:0 auto;padding:0 32px}
.eyebrow{font-size:11px;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);font-weight:600}
h1,h2,h3,h4{font-family:var(--serif);font-weight:500;color:var(--ink);letter-spacing:.01em}
h2.sec{font-size:clamp(32px,3.6vw,46px);line-height:1.1;margin:10px 0 12px}
.dark h2.sec,.dark h3,.dark h4{color:#fff}
.rule{width:56px;height:2px;background:var(--gold);margin:18px 0}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 28px;font-size:11px;letter-spacing:.22em;text-transform:uppercase;font-weight:600;border:1px solid var(--gold);color:var(--gold-d);background:transparent;cursor:pointer;transition:.25s;text-align:center}
.btn:hover{background:var(--gold);color:#fff}
.btn.solid{background:var(--gold);color:#fff}
.btn.solid:hover{background:var(--gold-d);border-color:var(--gold-d)}
.dark .btn{color:var(--gold-l)}
.dark .btn.solid,.dark .btn:hover{color:#fff}
.btn.wa{background:#25D366;border-color:#25D366;color:#fff}
.btn.wa:hover{background:#1ebe5a}
.btn svg{width:17px;height:17px;fill:currentColor}

/* barra superior y menú */
.top{background:var(--char);color:var(--ctxt);font-size:11.5px;border-bottom:1px solid var(--cline)}
.top .wrap{display:flex;justify-content:space-between;align-items:center;min-height:38px;gap:20px}
.top .l,.top .r{display:flex;gap:22px;align-items:center}
.top b{color:var(--gold-l);font-weight:500}
.soc{display:flex;gap:8px}
.soc a{width:24px;height:24px;border:1px solid var(--cline);display:grid;place-items:center;border-radius:50%;color:var(--gold-l);transition:.2s}
.soc a:hover{background:var(--gold);color:#fff;border-color:var(--gold)}
.soc svg{width:12px;height:12px;fill:currentColor}
header.nav{position:sticky;top:0;z-index:50;background:var(--char2);box-shadow:0 2px 18px rgba(0,0,0,.18)}
.admin-bar header.nav{top:32px}
header.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:82px;gap:20px}
.logo{display:flex;align-items:center;gap:14px}
.logo img{max-height:58px;width:auto}
.logo .mk{width:42px;height:42px;border:1px solid var(--gold);display:grid;place-items:center;font-family:var(--serif);color:var(--gold-l);transform:rotate(45deg);flex-shrink:0}
.logo .mk span{transform:rotate(-45deg);font-size:18px}
.logo .nm{font-family:var(--serif);font-size:23px;letter-spacing:.16em;white-space:nowrap;color:#fff;line-height:1;text-transform:uppercase}
.logo .nm small{display:block;font-family:var(--sans);font-size:8.5px;letter-spacing:.55em;color:var(--gold-l);margin-top:6px}
nav.menu>ul{display:flex;list-style:none}
nav.menu li{position:relative;list-style:none}
nav.menu>ul>li>a{display:block;padding:31px 14px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:500;color:var(--ctxt);transition:.2s}
nav.menu>ul>li>a:hover,nav.menu>ul>li.current-menu-item>a{color:var(--gold-l)}
nav.menu>ul>li.menu-item-has-children>a::after{content:' ▾';font-size:9px}
nav.menu .sub-menu{position:absolute;top:100%;left:0;min-width:220px;background:#fff;box-shadow:0 18px 40px rgba(0,0,0,.15);border-top:2px solid var(--gold);opacity:0;visibility:hidden;transform:translateY(8px);transition:.25s;z-index:60}
nav.menu li:hover>.sub-menu,nav.menu li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}
nav.menu .sub-menu a{display:block;padding:12px 22px;font-size:13px;color:var(--ink);border-bottom:1px solid var(--line)}
nav.menu .sub-menu a:hover{color:var(--gold-d);background:var(--light)}
.nav-cta .btn{padding:11px 18px;font-size:10px}
.burger{display:none;background:none;border:1px solid var(--cline);width:44px;height:44px;cursor:pointer;color:#fff;font-size:20px}

/* portada */
.hero{position:relative;height:78vh;min-height:520px;max-height:760px;display:flex;align-items:center;background-color:var(--char);background-position:center;background-size:cover}
.hero::after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(30,32,36,.78) 0%,rgba(30,32,36,.45) 55%,rgba(30,32,36,.15))}
.hero .slides,.hero .slides div{position:absolute;inset:0}
.hero .slides{z-index:0;overflow:hidden}
.hero .slides div{background-position:center;background-size:cover;opacity:0;transition:opacity 1.6s ease}
.hero .slides div.on{opacity:1}
.hero .wrap{position:relative;z-index:2;width:100%}
.hero .eyebrow{color:var(--gold-l)}
.hero h1{font-size:clamp(40px,6vw,78px);line-height:1.04;margin:16px 0 14px;font-weight:400;color:#fff;max-width:900px}
.hero h1 em{color:var(--gold-l);font-style:italic}
.hero p{font-size:16px;max-width:520px;color:#ecebe7}

.search-wrap{position:relative;z-index:5;margin-top:-62px}
.search{background:#fff;box-shadow:0 24px 60px -20px rgba(0,0,0,.28);padding:26px 28px;display:grid;grid-template-columns:repeat(5,1fr) auto;gap:18px;align-items:end;border-top:3px solid var(--gold)}
.search .btn{height:48px}
.f label{display:block;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-d);margin-bottom:6px;font-weight:600}
.f select,.f input,.f textarea{width:100%;background:transparent;border:none;border-bottom:1px solid #cfcbc2;color:var(--ink);padding:9px 2px;font-size:14px;outline:none;border-radius:0}
.f select{appearance:none;-webkit-appearance:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23b8975a'/%3E%3C/svg%3E") right 4px center no-repeat;padding-right:18px}
.f select:focus,.f input:focus,.f textarea:focus{border-color:var(--gold)}
.dark .f select,.dark .f input,.dark .f textarea{color:#fff;border-color:#62656b}
.dark .f select option{color:var(--ink)}
.dark .f label{color:var(--gold-l)}
.hp{position:absolute;left:-9999px}

section{padding:96px 0}
section.white{background:#fff}
section.dark,.dark{background:var(--char);color:var(--ctxt)}
.sec-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:44px;gap:30px;flex-wrap:wrap}
.sec-head p{max-width:500px}
.center{text-align:center}

/* tarjetas */
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.card{background:#fff;transition:.35s;border:1px solid var(--line);display:block}
.card:hover{transform:translateY(-5px);box-shadow:0 26px 50px -26px rgba(0,0,0,.3)}
.card .ph{position:relative;aspect-ratio:3/2;overflow:hidden;background:#ddd}
.card .ph img{width:100%;height:100%;object-fit:cover;transition:.9s}
.card:hover .ph img{transform:scale(1.05)}
.tag{position:absolute;top:14px;left:14px;background:var(--gold);color:#fff;font-size:9.5px;letter-spacing:.22em;text-transform:uppercase;padding:6px 12px;font-weight:600}
.tag.rent{background:var(--char)}
.tag.state{left:auto;right:14px;background:#a33}
.code{position:absolute;bottom:12px;right:12px;background:rgba(43,45,49,.85);color:#fff;font-size:10px;letter-spacing:.12em;padding:5px 10px}
.card .bd{padding:22px}
.card h3{font-size:24px;line-height:1.15}
.card .sub{font-size:12.5px;color:var(--mute);margin:3px 0 14px}
.specs{display:flex;gap:6px 12px;font-size:11.5px;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-wrap:wrap}
.specs span{display:flex;align-items:center;gap:5px}
.specs svg,.kpis svg{stroke:var(--gold);fill:none;stroke-width:1.6}
.specs svg{width:15px;height:15px}
.price{display:flex;justify-content:space-between;align-items:end;margin-top:14px;gap:10px}
.price b{font-family:var(--serif);font-size:26px;color:var(--ink);font-weight:600;line-height:1}
.price small{display:block;font-size:11px;color:var(--mute);margin-top:4px}
.price .more{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-d);font-weight:600;border-bottom:1px solid var(--gold);white-space:nowrap}

/* quiénes somos */
.about{display:grid;grid-template-columns:1fr 1.15fr;gap:64px;align-items:center}
.about .txt p+p{margin-top:14px}
.video{position:relative;aspect-ratio:16/9;background-color:#222;background-position:center;background-size:cover;cursor:pointer;overflow:hidden}
.video iframe,.video video{position:absolute;inset:0;width:100%;height:100%;border:0;z-index:3}
.video::after{content:'';position:absolute;inset:0;background:rgba(30,32,36,.35);transition:.3s}
.video:hover::after{background:rgba(30,32,36,.2)}
.video .play{position:absolute;z-index:2;top:50%;left:50%;transform:translate(-50%,-50%);width:78px;height:78px;border-radius:50%;background:rgba(255,255,255,.92);box-shadow:0 0 0 12px rgba(255,255,255,.2);border:none;cursor:pointer}
.video .play::before{content:'';position:absolute;top:50%;left:54%;transform:translate(-50%,-50%);border-left:20px solid var(--gold-d);border-top:12px solid transparent;border-bottom:12px solid transparent}
.video .lbl{position:absolute;z-index:2;bottom:16px;left:18px;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:#fff}
.nums{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:34px;padding-top:28px;border-top:1px solid var(--cline)}
.nums b{display:block;font-family:var(--serif);font-size:40px;color:var(--gold-l);font-weight:500;line-height:1}
.nums span{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase}

.serv{display:grid;grid-template-columns:repeat(var(--n,4),1fr);gap:24px}
.serv>div{background:#fff;padding:36px 28px;border:1px solid var(--line);border-top:3px solid var(--gold)}
.serv .n{font-family:var(--serif);font-size:38px;color:var(--gold);line-height:1}
.serv h3{font-size:23px;margin:16px 0 8px}
.serv p{font-size:13.5px}

.tgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.tcard{background:var(--light);padding:34px 30px}
.tcard .q{font-family:var(--serif);font-size:70px;color:var(--gold);line-height:.6;height:30px}
.tcard p{font-family:var(--serif);font-size:20px;font-style:italic;color:var(--ink);line-height:1.45}
.tcard .who{margin-top:20px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-d);font-weight:600}
.stars{color:var(--gold);letter-spacing:3px;font-size:13px;margin-bottom:8px}

.tas{display:grid;grid-template-columns:1fr 1.1fr;gap:64px;align-items:center}
.tas ul{list-style:none;margin-top:24px}
.tas li{padding:10px 0 10px 26px;position:relative;border-bottom:1px solid var(--cline)}
.tas li::before{content:'';position:absolute;left:0;top:21px;width:12px;height:1px;background:var(--gold-l)}
.form{background:var(--char2);padding:38px;border:1px solid var(--cline)}
.form h3{font-size:28px;margin-bottom:20px}
.fg{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.fg .full{grid-column:span 2}
.ok-msg{background:#e5f2e7;color:#2f7a3d;padding:14px 18px;margin-bottom:18px;font-size:14px;border-left:3px solid #2f7a3d}
.dark .ok-msg{background:rgba(47,122,61,.2);color:#bfe5c6}

.bcard{background:#fff;border:1px solid var(--line);transition:.3s;display:block}
.bcard:hover{box-shadow:0 22px 44px -24px rgba(0,0,0,.3)}
.bcard .im{aspect-ratio:16/10;overflow:hidden;background:#ddd}
.bcard .im img{width:100%;height:100%;object-fit:cover}
.bcard .bd{padding:22px}
.bcard .cat{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-d);font-weight:600}
.bcard h3{font-size:23px;line-height:1.2;margin:8px 0}
.bcard p{font-size:13.5px}
.bcard .meta{font-size:11.5px;color:var(--mute);margin-top:14px}
.plus{background:var(--char);color:var(--ctxt);padding:30px;display:flex;flex-direction:column;justify-content:center}
.plus .eyebrow{color:var(--gold-l)}
.plus h3{color:#fff;font-size:26px;margin:8px 0 18px}
.plus table{width:100%;border-collapse:collapse;font-size:13px}
.plus td{padding:9px 0;border-bottom:1px solid var(--cline)}
.plus td:last-child{text-align:right;color:var(--gold-l);font-weight:600}
.plus .note{font-size:11px;margin-top:14px;color:#9a9893}

.contact{display:grid;grid-template-columns:1fr 1.2fr;gap:56px}
.cinfo div{padding:18px 0;border-bottom:1px solid var(--line)}
.cinfo span{font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:var(--gold-d);font-weight:600}
.cinfo p{font-family:var(--serif);font-size:21px;color:var(--ink)}
.gmap{min-height:380px;border:1px solid var(--line);background:#e9e6df}
.gmap iframe{width:100%;height:100%;min-height:380px;border:0;display:block;filter:grayscale(.6)}

footer.foot{background:var(--char);color:var(--ctxt);padding:70px 0 0}
.fgrid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:46px;padding-bottom:54px}
footer.foot h5{font-size:10.5px;letter-spacing:.28em;text-transform:uppercase;color:var(--gold-l);font-weight:600;margin-bottom:18px}
footer.foot ul{list-style:none}
footer.foot li{font-size:13px;margin-bottom:9px;color:#b9b7b2}
footer.foot li a:hover{color:var(--gold-l)}
footer.foot .desc{margin-top:20px;font-size:13px;max-width:300px;color:#b9b7b2}
.fbot{border-top:1px solid var(--cline);padding:20px 0;font-size:11.5px;color:#9a9893;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}

.wa-f{position:fixed;right:24px;bottom:24px;width:58px;height:58px;border-radius:50%;background:#25D366;display:grid;place-items:center;z-index:90;box-shadow:0 10px 26px rgba(0,0,0,.3)}
.wa-f svg{width:30px;height:30px;fill:#fff}

/* tu asesor */
.team-solo .member{display:grid;grid-template-columns:.85fr 1.15fr;gap:64px;align-items:center}
.team-solo .photo{aspect-ratio:4/5;background:var(--light);overflow:hidden}
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.team-grid .member{background:var(--light)}
.team-grid .photo{aspect-ratio:1;background:#e9e6df;overflow:hidden}
.team-grid .info{padding:24px}
.member .photo img{width:100%;height:100%;object-fit:cover}
.member h3{font-size:clamp(30px,3vw,42px);line-height:1.1;margin-top:8px}
.team-grid .member h3{font-size:26px}
.member .cargo{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-d);font-weight:600;margin-top:6px}
.member .bio p{margin-bottom:12px}
.member .links{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.member .links .btn{padding:12px 20px}

/* listado */
.page-hd{background:var(--char);padding:56px 0 46px}
.page-hd h1{font-size:clamp(32px,3.6vw,46px);color:#fff;line-height:1.1}
.crumb{font-size:11.5px;color:#a9a7a2;margin-bottom:8px}
.crumb a{color:var(--gold-l)}
.listing{display:grid;grid-template-columns:290px 1fr;gap:36px;padding:44px 0 90px}
.side{background:#fff;border:1px solid var(--line);padding:26px;align-self:start;position:sticky;top:104px}
.side .f{margin-bottom:18px}
.side h4{font-size:24px;margin-bottom:18px}
.side .clear{display:block;text-align:center;font-size:12px;margin-top:12px;color:var(--mute);text-decoration:underline}
.ltools{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;flex-wrap:wrap;gap:12px;font-size:13.5px}
.ltools select{background:#fff;border:1px solid var(--line);padding:9px 12px;color:var(--ink)}
.vt button{background:#fff;border:1px solid var(--line);padding:8px 14px;cursor:pointer;font-size:11px;letter-spacing:.08em;color:var(--body)}
.vt button.on{border-color:var(--gold);color:var(--gold-d);font-weight:600}
.lmap{height:620px;border:1px solid var(--line);display:none}
.lmap.on{display:block}
.pin-price{background:#fff;color:var(--ink);padding:5px 9px;font:600 12px var(--sans);box-shadow:0 4px 12px rgba(0,0,0,.25);border-bottom:2px solid var(--gold);white-space:nowrap;display:inline-block}
.empty{padding:60px;text-align:center;border:1px dashed #cfcbc2;grid-column:1/-1;background:#fff}
.pager{display:flex;gap:8px;justify-content:center;margin-top:40px;flex-wrap:wrap}
.pager .page-numbers{min-width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line);background:#fff;font-size:13px;padding:0 12px}
.pager .page-numbers.current{background:var(--gold);color:#fff;border-color:var(--gold)}

/* ficha */
.slider{position:relative;margin-top:26px;background:#222}
.slider .main{aspect-ratio:16/8;overflow:hidden;position:relative}
.slider .main img{width:100%;height:100%;object-fit:cover}
.slider .arr{position:absolute;top:50%;transform:translateY(-50%);width:50px;height:50px;border-radius:50%;background:rgba(255,255,255,.9);border:none;cursor:pointer;font-size:24px;line-height:1;color:var(--ink);z-index:2}
.slider .arr.l{left:18px}.slider .arr.r{right:18px}
.slider .cnt{position:absolute;bottom:14px;right:16px;background:rgba(43,45,49,.85);color:#fff;font-size:11.5px;padding:5px 12px;letter-spacing:.1em}
.thumbs{display:flex;gap:8px;overflow-x:auto;padding:8px 0;background:var(--light)}
.thumbs img{width:130px;height:78px;object-fit:cover;cursor:pointer;opacity:.55;flex-shrink:0;border:2px solid transparent;transition:.2s}
.thumbs img.on,.thumbs img:hover{opacity:1;border-color:var(--gold)}
.ficha{display:grid;grid-template-columns:1fr 370px;gap:46px;padding:36px 0 90px}
.fh h1{font-size:46px;line-height:1.05;margin-top:8px}
.fh .sub{color:var(--mute);margin-top:6px}
.vals{display:grid;grid-template-columns:repeat(3,1fr);background:#fff;border:1px solid var(--line);margin:26px 0}
.vals div{padding:18px 20px;border-right:1px solid var(--line)}
.vals div:last-child{border:none}
.vals span{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-d);font-weight:600}
.vals b{display:block;font-family:var(--serif);font-size:28px;color:var(--ink);font-weight:600;line-height:1.1}
.vals div:first-child{background:var(--char)}
.vals div:first-child b{color:#fff}.vals div:first-child span{color:var(--gold-l)}
.vals.one{grid-template-columns:1fr}
.upd{font-size:11.5px;color:var(--mute);margin-top:-16px;margin-bottom:26px}
.kpis{display:grid;grid-template-columns:repeat(var(--n,5),1fr);gap:12px}
.kpis div{background:#fff;border:1px solid var(--line);padding:18px 10px;text-align:center}
.kpis svg{width:24px;height:24px;margin:0 auto 6px;display:block}
.kpis b{display:block;font-family:var(--serif);font-size:26px;color:var(--ink);font-weight:600;line-height:1}
.kpis span{font-size:9.5px;letter-spacing:.16em;text-transform:uppercase}
.blk{background:#fff;border:1px solid var(--line);padding:30px;margin-top:22px}
.blk h2{font-size:27px;margin-bottom:14px}
.blk .content p{margin-bottom:12px}
.feat{display:grid;grid-template-columns:repeat(3,1fr);gap:10px 22px;font-size:13.5px;list-style:none}
.feat li::before{content:'◆ ';color:var(--gold);font-size:9px}
.tbl{width:100%;border-collapse:collapse;font-size:13.5px}
.tbl td{padding:11px 0;border-bottom:1px solid var(--line)}
.tbl td:last-child{text-align:right;color:var(--ink);font-weight:500}
.fmap{height:340px}
.embed{position:relative;aspect-ratio:16/9;background:#111}
.embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.agent{background:#fff;border:1px solid var(--line);border-top:3px solid var(--gold);padding:28px;position:sticky;top:104px}
.agent .ag{display:flex;gap:16px;align-items:center;padding-bottom:20px;border-bottom:1px solid var(--line);margin-bottom:18px}
.agent .ag img,.agent .ag .ph0{width:74px;height:74px;border-radius:50%;object-fit:cover;flex-shrink:0;background:var(--light)}
.agent .ag b{font-family:var(--serif);font-size:23px;color:var(--ink);font-weight:600;display:block;line-height:1.1}
.agent .ag small{display:block;font-size:12px;color:var(--mute)}
.agent .f{margin-bottom:14px}
.agent .btn{width:100%;margin-top:8px}
.shr{display:flex;gap:8px;margin-top:14px}
.shr button{flex:1;background:none;border:1px solid var(--line);color:var(--body);padding:10px 6px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}
.shr button:hover{border-color:var(--gold);color:var(--gold-d)}

/* agenda */
.modal{position:fixed;inset:0;background:rgba(30,32,36,.6);z-index:150;display:none;align-items:center;justify-content:center;padding:20px}
.modal.on{display:flex}
.mbox{background:#fff;width:min(780px,100%);max-height:92vh;overflow:auto;display:grid;grid-template-columns:1fr 1fr;position:relative}
.mbox .cal{padding:30px;border-right:1px solid var(--line)}
.mbox .slots{padding:30px;background:var(--light)}
.mbox h3{font-size:24px;margin-bottom:4px}
.calh{display:flex;justify-content:space-between;align-items:center;margin:18px 0 12px;font-weight:600;color:var(--ink)}
.calh button{background:none;border:1px solid var(--line);width:32px;height:32px;cursor:pointer}
.days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center;font-size:13px}
.days .dn{font-size:10px;letter-spacing:.1em;color:var(--mute);padding:4px 0;text-transform:uppercase}
.days button{aspect-ratio:1;border:none;background:none;cursor:pointer;font-size:13px;color:var(--ink);border-radius:50%}
.days button:hover:not(:disabled){background:var(--light)}
.days button:disabled{color:#ccc;cursor:default}
.days button.on{background:var(--gold);color:#fff;font-weight:600}
.tgrid2{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0 20px}
.tgrid2 button{padding:10px 0;border:1px solid var(--line);background:#fff;cursor:pointer;font-size:13px}
.tgrid2 button.on{background:var(--char);color:#fff;border-color:var(--char)}
.tgrid2 button:disabled{opacity:.35;text-decoration:line-through;cursor:default}
.mclose{position:absolute;top:8px;right:14px;font-size:30px;color:var(--ink);cursor:pointer;background:none;border:none;z-index:2}
.toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%) translateY(160px);background:var(--char);color:#fff;border-left:3px solid var(--gold);padding:15px 24px;font-size:13.5px;z-index:300;transition:.35s;box-shadow:0 12px 30px rgba(0,0,0,.3);max-width:90vw}
.toast.on{transform:translateX(-50%)}

/* blog / páginas */
.post{max-width:820px;margin:0 auto;padding:50px 32px 90px}
.post .hd{width:100%;aspect-ratio:16/8;object-fit:cover;margin:24px 0 30px}
.entry p,.entry ul,.entry ol,.entry table,.entry figure{margin-bottom:18px;font-size:16px}
.entry ul,.entry ol{padding-left:22px}
.entry h2{font-size:32px;margin:34px 0 12px}
.entry h3{font-size:26px;margin:28px 0 10px}
.entry a{color:var(--gold-d);text-decoration:underline}
.entry img{margin:20px 0}
.entry table{width:100%;border-collapse:collapse}
.entry td,.entry th{border-bottom:1px solid var(--line);padding:10px;text-align:left}
.entry blockquote{border-left:3px solid var(--gold);padding:6px 20px;font-family:var(--serif);font-size:22px;font-style:italic;color:var(--ink);margin:24px 0}

@media(max-width:1100px){
  .search{grid-template-columns:repeat(3,1fr)}.search .btn{grid-column:span 3}
  .serv{grid-template-columns:1fr 1fr}
}
@media(max-width:900px){
  .wrap{padding:0 18px}
  .burger{display:block}
  nav.menu{position:fixed;top:0;right:-100%;width:min(320px,85vw);height:100vh;background:var(--char2);z-index:200;transition:.3s;overflow:auto;padding:70px 0 30px;box-shadow:-10px 0 40px rgba(0,0,0,.4)}
  nav.menu.on{right:0}
  nav.menu>ul{flex-direction:column}
  nav.menu>ul>li>a{padding:14px 26px;border-bottom:1px solid var(--cline)}
  nav.menu .sub-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;background:var(--char);border:none}
  nav.menu .sub-menu a{color:var(--ctxt);border-color:var(--cline);padding-left:40px}
  .nav-cta,.top .tk,.top .l span.hide-m{display:none}
  .search{grid-template-columns:1fr 1fr}.search .btn{grid-column:span 2}
  .grid3,.grid2,.serv,.tgrid,.about,.tas,.contact,.listing,.ficha,.fgrid,.mbox,.team-grid,.team-solo .member{grid-template-columns:1fr}
  .team-solo .member{gap:30px}
  .kpis{grid-template-columns:repeat(3,1fr)}
  .vals{grid-template-columns:1fr}.vals div{border-right:none;border-bottom:1px solid var(--line)}
  .side,.agent{position:static}
  .feat{grid-template-columns:1fr 1fr}
  .fg{grid-template-columns:1fr}.fg .full{grid-column:auto}
  section{padding:70px 0}
  .fh h1{font-size:36px}
  .slider .main{aspect-ratio:4/3}
}
@media print{
  .top,header.nav,footer.foot,.wa-f,.agent form,.agent .btn,.shr,.slider .arr,.thumbs,#wpadminbar,.modal{display:none!important}
  .ficha{grid-template-columns:1fr}
  body{background:#fff}
  .blk,.vals,.kpis div{border-color:#ccc}
}
