/* ============================================================
   NC Travel Cusco — Home styles
   Marca: Poppins + naranja #F06A00 sobre grises claros
   ============================================================ */
:root{
  --orange:#F06A00;--orange-hover:#D25A00;--orange-2:#ff8c3a;--orange-tint:rgba(240,106,0,.10);
  --page:#F5F6F8;--card:#fff;--sand:#EADDCB;
  --ink:#232734;--ink-2:#5C6065;--line:#E7E9ec;
  --wa:#25D366;--topbar:#22262A;--footer:#232a3a;
  --shadow:0 16px 40px rgba(35,39,52,.10);--shadow-sm:0 8px 22px rgba(35,39,52,.07);--wrap:1240px;
}
*{box-sizing:border-box}
body{font-family:'Poppins',system-ui,sans-serif;background:var(--page);color:var(--ink);line-height:1.6;margin:0}
a{text-decoration:none;color:inherit}img{max-width:100%}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 22px}
.sec{padding-block:clamp(48px,6vw,80px)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;font-size:14px;letter-spacing:.02em;padding:13px 24px;border-radius:999px;border:1.5px solid transparent;cursor:pointer;transition:.15s;white-space:nowrap}
.btn-primary{background:var(--orange);color:#fff}.btn-primary:hover{background:var(--orange-hover);transform:translateY(-1px)}
.btn-dark{background:rgba(0,0,0,.45);color:#fff;border-color:rgba(255,255,255,.4)}
.btn-dark:hover{background:rgba(0,0,0,.65)}
.btn-wa{background:var(--wa);color:#08331e}.btn-wa:hover{filter:brightness(.96)}

/* section heading */
.shead{text-align:center;max-width:680px;margin:0 auto 40px}
.titlerow{display:inline-flex;align-items:center;gap:15px;justify-content:center;flex-wrap:wrap}
.sicon{width:48px;height:48px;border-radius:13px;background:linear-gradient(135deg,var(--orange),var(--orange-2));display:grid;place-items:center;color:#fff;font-size:22px;box-shadow:0 10px 22px rgba(240,106,0,.42);flex:none}
h2.title{font-weight:800;font-size:clamp(28px,4vw,44px);line-height:1.08;letter-spacing:-.015em;margin:0}
.shead p{color:var(--ink-2);margin-top:14px;font-size:16px}
.eyebrow{font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--orange);margin-bottom:12px}

/* ===== HEADER ===== */
.site{position:sticky;top:0;z-index:60;box-shadow:0 4px 18px rgba(35,39,52,.06)}
.topbar{background:var(--topbar);color:#e9ece9;font-size:13px}
.topbar .in{max-width:var(--wrap);margin:0 auto;padding:8px 22px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.phones{display:flex;gap:10px;align-items:center}
.wapill{display:inline-flex;align-items:center;gap:7px;background:var(--wa);color:#0b3d24;font-weight:600;padding:5px 12px;border-radius:999px;font-size:12.5px;white-space:nowrap}
.wapill svg{width:14px;height:14px}
.toprgt{display:flex;align-items:center;gap:14px}
.socials{display:flex;gap:10px;align-items:center}
.socials a{width:22px;height:22px;display:grid;place-items:center;color:#c7ccc8;border-radius:5px;transition:.15s}
.socials a:hover{color:#fff;background:rgba(255,255,255,.1)}.socials svg{width:15px;height:15px}
.sep{width:1px;height:18px;background:rgba(255,255,255,.22)}
.langs{display:flex;gap:11px;align-items:center;font-weight:500;font-size:12.5px}
.langs a{color:#c7ccc8}.langs a.on{color:var(--orange);font-weight:600}.langs a:hover{color:#fff}
.mainbar{background:#fff}
.mainbar .in{max-width:var(--wrap);margin:0 auto;padding:14px 22px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.logo{display:flex;align-items:center;gap:12px}
.logo .mark{width:50px;height:50px;border-radius:50%;background:var(--orange-tint);border:1px solid var(--sand);display:grid;place-items:center;flex:none}
.logo .mark svg{width:32px;height:32px}
.logo .b{font-weight:800;font-size:23px;letter-spacing:-.01em}.logo .b span{color:var(--orange)}
.logo .s{font-weight:600;font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-2);margin-top:2px}
.navwrap{background:#fff;border-top:1px solid var(--line)}
.nav{max-width:var(--wrap);margin:0 auto;padding:0 22px;display:flex;justify-content:center;gap:30px;list-style:none}
.nav>li{position:relative}
.nav>li>a{display:inline-flex;align-items:center;gap:5px;padding:15px 0;font-weight:500;font-size:15px;border-bottom:3px solid transparent;transition:.15s}
.nav>li:hover>a{color:var(--orange)}
.nav>li.menu-item-has-children:hover>a,.nav>li.has:hover>a{border-bottom-color:var(--orange)}
.nav>li.menu-item-has-children>a::after{content:"▾";font-size:10px;color:var(--ink-2)}
/* dropdown (soporta wp_nav_menu .sub-menu y estático .drop) */
.nav .sub-menu,.drop{position:absolute;top:100%;left:0;transform:translateY(6px);background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);min-width:230px;padding:8px;list-style:none;opacity:0;visibility:hidden;transition:.16s;z-index:5}
.nav>li:hover>.sub-menu,.nav>li.has:hover .drop{opacity:1;visibility:visible;transform:translateY(0)}
.nav .sub-menu a,.drop a{display:block;padding:10px 14px;border-radius:8px;font-size:14px}
.nav .sub-menu a:hover,.drop a:hover{background:var(--page);color:var(--orange)}
.burger{display:none;width:46px;height:44px;border:1px solid var(--line);border-radius:10px;background:#fff;cursor:pointer;place-items:center}.burger svg{width:24px;height:24px}
.promo{background:var(--orange);color:#fff}
.promo .in{max-width:var(--wrap);margin:0 auto;padding:9px 22px;display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;font-size:14px;font-weight:500}
.promo .vt{display:inline-flex;align-items:center;gap:7px;border:1.5px solid rgba(255,255,255,.85);color:#fff;font-weight:700;font-size:12.5px;letter-spacing:.04em;text-transform:uppercase;padding:6px 15px;border-radius:999px;transition:.15s}
.promo .vt:hover{background:#fff;color:var(--orange)}
.mnav{display:none;background:#fff;border-top:1px solid var(--line);padding:8px 14px 16px}
.mnav a{display:block;padding:12px 8px;border-bottom:1px solid var(--line);font-weight:500}.mnav a:last-child{border-bottom:0;color:var(--orange);font-weight:700}

/* ===== HERO ===== */
.hero{position:relative;color:#fff;text-align:center;overflow:hidden}
.hero .bg{position:absolute;inset:0;background:linear-gradient(180deg,#5c6b78,#2c3a44 60%,#20272e);z-index:0}
.hero .bg::after{content:"";position:absolute;inset:0;background:radial-gradient(120% 100% at 50% 120%,rgba(0,0,0,.55),transparent 60%),linear-gradient(180deg,rgba(0,0,0,.25),rgba(0,0,0,.4))}
.hero .mtn{position:absolute;left:0;right:0;bottom:-1px;height:70%;z-index:1;background:conic-gradient(from 90deg at 50% 100%, #eef2f4 0deg, #c7d0d6 20deg, #9fb0b8 40deg, #6f828c 60deg, #45555f 80deg, #45555f 100deg);clip-path:polygon(0 100%,18% 62%,30% 74%,42% 40%,50% 18%,58% 42%,70% 70%,82% 55%,100% 100%);opacity:.85}
.hero .in{position:relative;z-index:3;max-width:900px;margin:0 auto;padding:clamp(70px,11vw,140px) 22px}
.hero h1{font-weight:800;font-size:clamp(34px,6.5vw,66px);line-height:1.04;letter-spacing:.01em;text-transform:uppercase;text-shadow:0 3px 24px rgba(0,0,0,.5);margin:0}
.hero h1 span{color:var(--orange);display:block}
.hero p{margin:20px auto 0;max-width:56ch;font-size:clamp(15px,2.1vw,19px);color:#eef1f0}
.hero .cta-row{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;margin-top:32px}

/* ===== TOUR CARD ===== */
.grid{display:grid;gap:24px}
.g4{grid-template-columns:repeat(4,1fr)}.g3{grid-template-columns:repeat(3,1fr)}
@media(max-width:1040px){.g4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.g3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.g4,.g3{grid-template-columns:1fr}}
.card{background:var(--card);border-radius:18px;overflow:hidden;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;transition:.18s}
.card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.card .ph{position:relative;aspect-ratio:16/11;background-size:cover;background-position:center;background-color:#3a4a42}
.p1{background:linear-gradient(135deg,#4b6b53,#25352b)}.p2{background:linear-gradient(135deg,#2f6f7a,#173a41)}
.p3{background:linear-gradient(135deg,#b5561f,#7a2f12)}.p4{background:linear-gradient(135deg,#8a6a3a,#4a3418)}
.p5{background:linear-gradient(135deg,#5a7040,#31401f)}.p6{background:linear-gradient(135deg,#38607a,#1c3141)}
.p7{background:linear-gradient(135deg,#6a86a0,#33506a)}.p8{background:linear-gradient(135deg,#7a5a2a,#412f14)}
.tag{position:absolute;top:14px;left:14px;display:inline-flex;align-items:center;gap:6px;background:var(--orange);color:#fff;font-weight:700;font-size:11px;letter-spacing:.06em;text-transform:uppercase;padding:6px 12px;border-radius:999px;box-shadow:var(--shadow-sm)}
.tag.dark{background:#232734}
.card .body{padding:18px 18px 20px;display:flex;flex-direction:column;gap:11px;flex:1}
.card h3{font-weight:700;font-size:19px;line-height:1.25;margin:0}
.card .teaser{font-size:13.5px;color:var(--ink-2);flex:1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0}
.meta{display:flex;gap:12px;flex-wrap:wrap}
.meta .m{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--ink-2)}
.meta .m .ic{width:26px;height:26px;border-radius:50%;background:var(--orange-tint);display:grid;place-items:center;color:var(--orange);font-size:12px}
.card .foot{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding-top:14px}
.price .from{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}
.price .amt{font-weight:800;font-size:22px;line-height:1}.price .pp{font-size:11.5px;color:var(--ink-2)}
.book{background:var(--orange);color:#fff;font-weight:700;font-size:13px;padding:11px 17px;border-radius:999px;white-space:nowrap;transition:.15s}
.book:hover{background:var(--orange-hover)}
.seemore{text-align:center;margin-top:36px}

/* ===== BENTO CATEGORIAS ===== */
.bento{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:158px;gap:16px}
.cat{position:relative;border-radius:16px;overflow:hidden;display:flex;align-items:flex-end;padding:20px;color:#fff;box-shadow:var(--shadow-sm)}
.cat::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.66))}
.cat>div{position:relative;z-index:2}
.cat .cnt{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:500;margin-bottom:6px}
.cat .cnt::before{content:"⚲";color:var(--orange);font-size:15px}
.cat .n{font-weight:800;font-size:22px;display:block;line-height:1.1}
.cat .vt{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font-size:13px;font-weight:600;color:#fff}
.b-pkg{grid-column:1/3;grid-row:1/3}.b-trad{grid-column:3/4;grid-row:1}.b-multi{grid-column:4/5;grid-row:1}
.b-trek{grid-column:3/5;grid-row:2}.b-mapi{grid-column:1/2;grid-row:3}.b-cult{grid-column:2/3;grid-row:3}.b-south{grid-column:3/5;grid-row:3}
.cat.c1{background:linear-gradient(135deg,#5a6b52,#2d3a28)}.cat.c2{background:linear-gradient(135deg,#8a5a2a,#4a2f14)}
.cat.c3{background:linear-gradient(135deg,#3a6b7a,#1d3541)}.cat.c4{background:linear-gradient(135deg,#4b7050,#26402b)}
.cat.c5{background:linear-gradient(135deg,#6a86a0,#33506a)}.cat.c6{background:linear-gradient(135deg,#7a6a3a,#41341c)}
.cat.c7{background:linear-gradient(135deg,#b5713f,#6a3f1c)}
@media(max-width:820px){
  .bento{grid-template-columns:repeat(2,1fr);grid-auto-rows:150px}
  .b-pkg,.b-trad,.b-multi,.b-trek,.b-mapi,.b-cult,.b-south{grid-column:auto;grid-row:auto}
  .b-pkg{grid-column:1/3}
}

/* ===== REVIEWS ===== */
.ta-badge{display:inline-flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px 18px;box-shadow:var(--shadow-sm);font-weight:600}
.ta-badge .ico{color:#00aa6c;font-weight:800}
.rev{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:14px}
.rev .top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.rev .tabadge{display:inline-flex;align-items:center;gap:6px;border:1px solid #00aa6c;color:#00aa6c;border-radius:8px;padding:3px 9px;font-size:11px;font-weight:700}
.rev .stars{color:#e8a200;letter-spacing:1px;font-size:14px}
.rev p{font-size:14px;color:var(--ink);flex:1;line-height:1.6;margin:0}
.rev .who{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);padding-top:14px}
.rev .av{width:40px;height:40px;border-radius:50%;background:var(--orange);color:#fff;display:grid;place-items:center;font-weight:700}
.rev .who b{font-size:14px;display:block}.rev .who span{font-size:12px;color:var(--ink-2)}

/* ===== BLOG ===== */
.post{background:#fff;border-radius:16px;overflow:hidden;box-shadow:var(--shadow-sm);display:flex;flex-direction:column}
.post .ph{aspect-ratio:16/10;position:relative;background-size:cover;background-position:center}
.post .cat-t{position:absolute;top:14px;left:14px;background:var(--orange);color:#fff;font-weight:700;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;padding:5px 11px;border-radius:6px}
.post .body{padding:16px 18px 20px;display:flex;flex-direction:column;gap:10px;flex:1}
.post .m{font-size:11.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--orange)}
.post h4{font-weight:700;font-size:16.5px;line-height:1.3;margin:0}
.post .ex{font-size:13.5px;color:var(--ink-2);flex:1;margin:0}
.post .auth{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding-top:13px}
.post .auth .l{display:flex;align-items:center;gap:8px;font-size:13px}
.post .auth .av{width:28px;height:28px;border-radius:50%;background:var(--orange-tint);color:var(--orange);display:grid;place-items:center;font-size:11px;font-weight:700}
.post .auth .rd{font-size:12.5px;font-weight:700;color:var(--orange)}

/* ===== CONTACTO ===== */
.cwrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;align-items:start}
@media(max-width:860px){.cwrap{grid-template-columns:1fr}}
.cinfo .box{display:flex;gap:14px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:14px;padding:15px 16px;margin-bottom:12px;box-shadow:var(--shadow-sm)}
.cinfo .ic{width:44px;height:44px;border-radius:50%;background:var(--orange-tint);display:grid;place-items:center;color:var(--orange);flex:none;font-size:18px}
.cinfo .box .lb{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2)}
.cinfo .box b{font-size:15px}
.form{background:#fff;border-radius:18px;padding:26px;box-shadow:var(--shadow);border-top:4px solid var(--orange)}
.form h3{font-weight:800;font-size:24px;margin:0}
.form .subt{color:var(--orange);font-weight:600;font-size:13.5px;margin:6px 0 18px;background:var(--orange-tint);display:inline-block;padding:5px 12px;border-radius:999px}
.form .fg{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:520px){.form .fg{grid-template-columns:1fr}}
.form label{font-size:12.5px;font-weight:600;display:block;margin-bottom:5px}.form label i{color:var(--orange);font-style:normal}
.form input,.form textarea,.form select{width:100%;border:1px solid var(--line);border-radius:9px;padding:11px 12px;font-family:inherit;font-size:14px;background:var(--page);color:var(--ink)}
.form input:focus,.form textarea:focus,.form select:focus{outline:2px solid var(--orange);border-color:var(--orange)}
.form .full{grid-column:1/-1}
.trust{display:flex;gap:18px;justify-content:center;flex-wrap:wrap;margin-top:16px;font-size:12.5px;color:var(--ink-2)}

/* ===== FOOTER ===== */
.foot-wrap{background:var(--footer);color:#aeb4c0;font-size:14px}
.ftop{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding-top:48px;padding-bottom:22px;border-bottom:1px solid rgba(255,255,255,.1)}
.flogo .b{font-weight:800;font-size:26px;color:#fff}.flogo .b span{color:var(--orange)}
.flogo p{color:#9aa0ac;font-size:13.5px;margin-top:6px}
.fsoc{display:flex;gap:12px}
.fsoc a{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.08);display:grid;place-items:center;color:#dfe3ea;transition:.15s}
.fsoc a:hover{background:var(--orange);color:#fff}.fsoc svg{width:17px;height:17px}
.fgrid{display:grid;grid-template-columns:1.3fr 1fr 1.2fr 1.2fr;gap:30px;padding-block:40px}
@media(max-width:860px){.fgrid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.fgrid{grid-template-columns:1fr}}
.fcol h5{color:#fff;font-weight:700;font-size:15px;margin:0 0 16px;position:relative;padding-bottom:8px}
.fcol h5::after{content:"";position:absolute;left:0;bottom:0;width:34px;height:2px;background:var(--orange)}
.fcol a,.fcol .li{display:flex;gap:9px;align-items:flex-start;color:#aeb4c0;padding:6px 0;transition:.15s}
.fcol a:hover{color:var(--orange)}.fcol .li .i{color:var(--orange);flex:none}
.fbadges{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}
.fbadge{width:52px;height:52px;border-radius:50%;background:var(--orange);display:grid;place-items:center;font-size:9px;color:#fff;text-align:center;line-height:1.1;font-weight:700;padding:4px}
.paybox{background:#fff;border-radius:12px;padding:12px;display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.pay{height:26px;min-width:42px;display:grid;place-items:center;font-size:9.5px;font-weight:800;color:#333;border:1px solid #e5e5e5;border-radius:5px}
.fbottom{background:var(--orange);color:#fff;text-align:center;padding:14px;font-size:13.5px}

@media(max-width:1080px){.nav{gap:20px}}
@media(max-width:900px){
  .socials{display:none}.navwrap{display:none}.burger{display:grid}
  .topbar .in{justify-content:center}.phones .wapill:nth-child(2){display:none}
}

/* ============================================================
   Optimización PageSpeed + Poppins global
   ============================================================ */
/* Imágenes reales (lazy + srcset) dentro de las cajas .ph — evitan CLS y permiten lazy-load */
.card .ph img,.post .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
/* Garantiza Poppins en TODOS los elementos (incluye formularios y botones del tema padre) */
body,button,input,select,textarea,h1,h2,h3,h4,h5,h6,p,a,span,li,label,.title{font-family:'Poppins',system-ui,-apple-system,'Segoe UI',sans-serif}

