/* ============================================================
   Abrazo Pewen — estilos propios de la página (prefijo .ap-)
   Archivo NUEVO: no modifica css/style.css
   ============================================================ */

/* ---------- HERO ---------- */
.ap-hero{position:relative;overflow:hidden;background:radial-gradient(1200px 500px at 85% 0%, #2c4a3a 0%, rgba(44,74,58,0) 60%),linear-gradient(135deg,var(--navy) 0%,var(--navy2) 100%);color:#fff;padding:54px 0 70px;}
.ap-hero::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:46px;background:var(--crema);clip-path:ellipse(75% 100% at 50% 100%);}
.ap-hero .container{position:relative;z-index:1;display:grid;grid-template-columns:1.1fr .9fr;gap:44px;align-items:center;}
.ap-hero h1{font-size:clamp(30px,4.6vw,50px);line-height:1.1;margin:10px 0 16px;}
.ap-hero h1 em{font-style:normal;color:var(--dorado);}
.ap-hero .gancho{font-size:17px;color:#E7E2D4;max-width:560px;margin-bottom:24px;}
.ap-cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:22px;}
.ap-hero-stats{display:flex;flex-wrap:wrap;gap:10px;}
.ap-pill{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);padding:8px 14px;border-radius:999px;font-size:13.5px;color:#F3EEDF;backdrop-filter:blur(4px);}
.ap-pill b{color:var(--dorado);font-size:16px;font-variant-numeric:tabular-nums;}
.ap-hero-photo{position:relative;border-radius:26px;overflow:hidden;box-shadow:0 30px 60px rgba(0,0,0,.4);transform:rotate(1.6deg);border:5px solid rgba(255,255,255,.92);}
.ap-hero-photo img{display:block;width:100%;height:auto;}
.ap-hero-tag{position:absolute;left:14px;bottom:14px;right:14px;background:rgba(27,31,48,.82);backdrop-filter:blur(6px);border-radius:14px;padding:11px 14px;font-size:13px;line-height:1.4;color:#EFE9D9;}
.ap-hero-tag b{color:var(--dorado);}
.ap-float{position:absolute;z-index:2;background:#fff;color:var(--navy);border-radius:999px;padding:9px 15px;font-size:13px;font-weight:600;box-shadow:0 12px 26px rgba(0,0,0,.28);animation:ap-bob 5s ease-in-out infinite;}
.ap-float.f1{top:-12px;left:-14px;}
.ap-float.f2{top:46%;right:-16px;animation-delay:-1.8s;background:var(--dorado);}
@keyframes ap-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}

/* ---------- SECCIONES BASE ---------- */
.ap-sec{padding:64px 0;}
.ap-sec.alt{background:#fff;}
.ap-sec.dark{background:linear-gradient(160deg,var(--navy) 0%,#1d3a33 100%);color:#fff;}
.ap-sec.dark .section-title{color:#fff;}
.ap-sec.dark .section-label{color:var(--dorado);}
.ap-lead{max-width:720px;font-size:16.5px;color:#464B5E;margin-bottom:30px;}
.ap-sec.dark .ap-lead{color:#D9E2DA;}
.ap-center{text-align:center;}
.ap-center .ap-lead{margin-left:auto;margin-right:auto;}

/* ---------- PASOS ---------- */
.ap-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;counter-reset:ap;}
.ap-step{position:relative;border-radius:16px;padding:26px 20px 22px;overflow:hidden;transition:transform .25s ease, box-shadow .25s ease;}
.ap-step:hover{transform:translateY(-6px);box-shadow:0 18px 34px rgba(27,31,48,.14);}
.ap-step::before{counter-increment:ap;content:counter(ap);position:absolute;right:12px;top:2px;font-family:'Playfair Display',serif;font-size:74px;font-weight:700;opacity:.14;line-height:1;}
.ap-step .ap-emoji{font-size:34px;display:block;margin-bottom:10px;}
.ap-step h3{font-size:16.5px;margin-bottom:6px;}
.ap-step p{font-size:14px;line-height:1.55;}
.ap-step.c1{background:var(--pastel-verde);color:#234D1F;}.ap-step.c1 p{color:#3C6B37;}
.ap-step.c2{background:var(--pastel-dorado);color:#6E4D06;}.ap-step.c2 p{color:#8C6A1D;}
.ap-step.c3{background:var(--pastel-celeste);color:#064953;}.ap-step.c3 p{color:#1F6B76;}
.ap-step.c4{background:var(--pastel-naranja);color:#7A3216;}.ap-step.c4 p{color:#96502E;}

/* ---------- ÁRBOL ---------- */
.ap-tree-wrap{position:relative;border-radius:26px;overflow:hidden;background:linear-gradient(180deg,#9FD4EC 0%,#D6EEF2 48%,#F7F1E4 100%);box-shadow:0 24px 50px rgba(27,31,48,.18);border:1px solid rgba(27,31,48,.08);}
.ap-tree-top{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;padding:16px 20px;background:rgba(255,255,255,.72);backdrop-filter:blur(8px);border-bottom:1px solid rgba(27,31,48,.08);position:relative;z-index:3;}
.ap-counter{display:flex;align-items:baseline;gap:10px;color:var(--navy);}
.ap-counter b{font-family:'Playfair Display',serif;font-size:38px;line-height:1;color:var(--verde);font-variant-numeric:tabular-nums;}
.ap-counter span{font-size:14px;font-weight:600;}
.ap-progress{flex:1;min-width:180px;max-width:360px;}
.ap-progress-bar{height:10px;border-radius:99px;background:rgba(27,31,48,.1);overflow:hidden;}
.ap-progress-bar i{display:block;height:100%;width:0;border-radius:99px;background:linear-gradient(90deg,var(--verde),var(--dorado));transition:width 1.4s cubic-bezier(.2,.8,.2,1);}
.ap-progress small{display:block;margin-top:5px;font-size:12px;color:#464B5E;}
.ap-toggle{display:inline-flex;background:rgba(27,31,48,.08);border-radius:99px;padding:3px;}
.ap-toggle button{border:0;background:transparent;font:600 13px 'Poppins',sans-serif;padding:8px 14px;border-radius:99px;cursor:pointer;color:var(--navy);}
.ap-toggle button.on{background:var(--navy);color:#fff;}
.ap-demo-ribbon{position:absolute;z-index:4;left:14px;bottom:58px;background:var(--naranja);color:#fff;font-size:11.5px;font-weight:700;letter-spacing:.6px;padding:6px 12px;border-radius:99px;box-shadow:0 4px 10px rgba(0,0,0,.2);}
.ap-svg{display:block;width:100%;height:auto;}
.ap-slot-empty{fill:rgba(255,255,255,.14);stroke:rgba(255,255,255,.55);stroke-width:1.5;stroke-dasharray:4 5;transition:fill .2s;}
.ap-slot-empty:hover{fill:rgba(255,255,255,.34);}
.ap-tile{cursor:pointer;transform-box:fill-box;transform-origin:center;animation:ap-pop .6s cubic-bezier(.2,1.4,.4,1) both;}
.ap-tile:hover{transform:scale(1.28);}
.ap-tile:focus{outline:none;}
.ap-tile:focus-visible circle.ring{stroke:var(--dorado);stroke-width:4;}
@keyframes ap-pop{0%{transform:scale(0);opacity:0}100%{transform:scale(1);opacity:1}}
.ap-cloud{animation:ap-drift 60s linear infinite;}
@keyframes ap-drift{from{transform:translateX(-60px)}to{transform:translateX(60px)}}
.ap-tree-hint{text-align:center;font-size:13px;color:#464B5E;padding:10px 16px 16px;position:relative;z-index:3;background:linear-gradient(180deg,rgba(247,241,228,0),#F7F1E4 60%);margin-top:-6px;}
.ap-gallery{display:none;padding:22px;background:#F7F1E4;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;}
.ap-gallery.on{display:grid;}
.ap-gcard{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 8px 20px rgba(27,31,48,.1);cursor:pointer;transition:transform .2s;border:0;text-align:left;font-family:inherit;padding:0;}
.ap-gcard:hover{transform:translateY(-4px);}
.ap-gcard .ph{aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;font-size:44px;color:#fff;font-weight:700;background-size:cover;background-position:center;}
.ap-gcard .tx{padding:10px 12px 12px;}
.ap-gcard b{display:block;font-size:14px;color:var(--navy);}
.ap-gcard small{font-size:12px;color:#5B6074;}

/* ---------- MODAL ---------- */
.ap-modal{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(14,18,30,.72);backdrop-filter:blur(4px);}
.ap-modal.on{display:flex;}
.ap-modal-card{width:min(420px,100%);background:#fff;border-radius:24px;overflow:hidden;box-shadow:0 30px 70px rgba(0,0,0,.45);animation:ap-pop .35s cubic-bezier(.2,1.2,.4,1) both;}
.ap-modal-card .ph{aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;font-size:84px;color:#fff;font-weight:700;background-size:cover;background-position:center;}
.ap-modal-card .tx{padding:18px 22px 22px;}
.ap-modal-card h3{font-size:20px;color:var(--navy);margin-bottom:4px;}
.ap-modal-card p{font-size:14px;color:#464B5E;}
.ap-modal-card .meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;}
.ap-modal-card .meta span{font-size:12.5px;background:var(--pastel-verde);color:#234D1F;padding:5px 11px;border-radius:99px;font-weight:600;}
.ap-modal-close{margin-top:16px;width:100%;border:0;background:var(--navy);color:#fff;font:600 14px 'Poppins',sans-serif;padding:12px;border-radius:12px;cursor:pointer;}

/* ---------- FORMULARIO ---------- */
.ap-form-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:34px;align-items:start;}
.ap-card{background:#fff;border-radius:22px;padding:28px;box-shadow:0 18px 40px rgba(27,31,48,.12);border:1px solid rgba(27,31,48,.06);}
.ap-sec.alt .ap-card{background:var(--crema);}
.ap-drop{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:240px;border:2.5px dashed var(--verde);border-radius:20px;background:var(--pastel-verde);color:#234D1F;text-align:center;padding:20px;cursor:pointer;transition:background .2s,transform .2s;overflow:hidden;}
.ap-drop:hover,.ap-drop.drag{background:#cfe6c9;transform:scale(1.01);}
.ap-drop input{position:absolute;inset:0;opacity:0;cursor:pointer;}
.ap-drop .big{font-size:48px;}
.ap-drop b{font-size:16px;}
.ap-drop small{font-size:12.5px;color:#3C6B37;}
.ap-drop img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:none;}
.ap-drop.has img{display:block;}
.ap-drop.has .ap-drop-txt{display:none;}
.ap-field{margin-bottom:14px;}
.ap-field label{display:block;font-size:13px;font-weight:600;color:var(--navy);margin-bottom:5px;}
.ap-field input[type=text],.ap-field input[type=email],.ap-field select{width:100%;font:15px 'Poppins',sans-serif;padding:12px 14px;border-radius:12px;border:1.5px solid #D9D3C3;background:#fff;color:var(--navy);transition:border-color .2s, box-shadow .2s;}
.ap-field input:focus,.ap-field select:focus{outline:none;border-color:var(--verde);box-shadow:0 0 0 4px rgba(60,132,60,.15);}
.ap-field .hint{font-size:12px;color:#6B7088;margin-top:4px;}
.ap-check{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.5;color:#33384B;margin:10px 0;}
.ap-check input{margin-top:3px;width:18px;height:18px;accent-color:var(--verde);flex-shrink:0;}
.ap-check a{color:var(--naranja);}
.ap-err{display:none;color:#B3261E;font-size:13px;margin:6px 0;font-weight:600;}
.ap-err.on{display:block;}
.ap-submit{width:100%;justify-content:center;margin-top:8px;font-size:16px;}
.ap-submit[disabled]{opacity:.55;cursor:not-allowed;transform:none;}
.ap-safe{display:flex;gap:10px;margin-top:16px;font-size:12.5px;color:#5B6074;line-height:1.5;}
.ap-success{display:none;text-align:center;}
.ap-success.on{display:block;animation:ap-pop .5s both;}
.ap-success .ticket{margin:14px auto;width:min(300px,100%);border-radius:20px;overflow:hidden;box-shadow:0 14px 30px rgba(27,31,48,.2);background:#fff;}
.ap-success .ticket .ph{aspect-ratio:1/1;background-size:cover;background-position:center;}
.ap-success .ticket .tx{padding:12px 14px;font-weight:700;color:var(--navy);}
.ap-success .ticket .tx small{display:block;font-weight:500;color:#5B6074;}

/* ---------- RESPETO ---------- */
.ap-rules{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.ap-rule{display:flex;gap:14px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:16px;padding:16px 18px;}
.ap-rule .e{font-size:26px;flex-shrink:0;}
.ap-rule b{display:block;font-size:15px;margin-bottom:2px;}
.ap-rule p{font-size:13.5px;color:#D9E2DA;line-height:1.5;}
.ap-quote{margin-top:26px;border-left:4px solid var(--dorado);padding:6px 0 6px 20px;font-family:'Playfair Display',serif;font-size:clamp(18px,2.4vw,24px);line-height:1.4;color:#F6E9C8;max-width:820px;}

/* ---------- TOURS ---------- */
.ap-tours{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.ap-tour{display:flex;flex-direction:column;gap:6px;border-radius:16px;padding:20px;text-decoration:none;transition:transform .25s,box-shadow .25s;}
.ap-tour:hover{transform:translateY(-6px);box-shadow:0 18px 34px rgba(27,31,48,.14);}
.ap-tour .e{font-size:30px;}
.ap-tour b{font-size:15.5px;}
.ap-tour span{font-size:13px;line-height:1.5;}
.ap-tour em{font-style:normal;font-weight:700;font-size:13px;margin-top:4px;}
.ap-tour.t1{background:var(--pastel-verde);color:#234D1F;}.ap-tour.t1 span{color:#3C6B37;}
.ap-tour.t2{background:var(--pastel-celeste);color:#064953;}.ap-tour.t2 span{color:#1F6B76;}
.ap-tour.t3{background:var(--pastel-dorado);color:#6E4D06;}.ap-tour.t3 span{color:#8C6A1D;}
.ap-tour.t4{background:var(--pastel-naranja);color:#7A3216;}.ap-tour.t4 span{color:#96502E;}
.ap-tour.t5{background:var(--pastel-purpura);color:#4A2568;}.ap-tour.t5 span{color:#5B2E82;}
.ap-tour.t6{background:var(--pastel-navy);color:#1B1F30;}.ap-tour.t6 span{color:#464B5E;}

/* ---------- SOBRE EL PEWEN ---------- */
.ap-pewen{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center;}
.ap-facts{display:grid;gap:12px;}
.ap-fact{display:flex;gap:14px;align-items:flex-start;background:#fff;border-radius:16px;padding:16px 18px;box-shadow:0 8px 20px rgba(27,31,48,.08);}
.ap-fact .e{font-size:28px;}
.ap-fact b{display:block;font-size:15px;color:var(--navy);}
.ap-fact p{font-size:13.5px;color:#464B5E;line-height:1.5;}
.ap-honest{margin-top:20px;background:var(--pastel-dorado);color:#6E4D06;border-radius:14px;padding:14px 18px;font-size:13.5px;line-height:1.55;}

/* ---------- FAQ ---------- */
.ap-faq details{background:#fff;border-radius:14px;margin-bottom:10px;border:1px solid rgba(27,31,48,.08);overflow:hidden;}
.ap-faq summary{cursor:pointer;list-style:none;padding:16px 20px;font-weight:600;font-size:15.5px;color:var(--navy);display:flex;justify-content:space-between;gap:12px;}
.ap-faq summary::-webkit-details-marker{display:none;}
.ap-faq summary::after{content:"＋";color:var(--naranja);font-weight:700;}
.ap-faq details[open] summary::after{content:"－";}
.ap-faq details p{padding:0 20px 18px;font-size:14.5px;color:#464B5E;line-height:1.65;}

/* ---------- CTA FINAL ---------- */
.ap-final{background:linear-gradient(135deg,var(--naranja) 0%,#E58A3A 100%);color:#fff;border-radius:28px;padding:44px 32px;text-align:center;box-shadow:0 24px 50px rgba(204,84,36,.35);}
.ap-final h2{font-size:clamp(24px,3.4vw,34px);margin-bottom:10px;}
.ap-final p{max-width:620px;margin:0 auto 22px;font-size:16px;color:#FFF3E8;}
.ap-final .btn-primary{background:#fff;color:var(--naranja);}

/* ---------- RESPONSIVE ---------- */
@media (max-width:900px){
  .ap-hero .container{grid-template-columns:1fr;gap:34px;}
  .ap-hero-photo{transform:none;max-width:560px;}
  .ap-steps{grid-template-columns:repeat(2,1fr);}
  .ap-tours{grid-template-columns:repeat(2,1fr);}
  .ap-form-grid,.ap-pewen,.ap-rules{grid-template-columns:1fr;}
}
@media (max-width:560px){
  .ap-sec{padding:46px 0;}
  .ap-steps,.ap-tours{grid-template-columns:1fr;}
  .ap-float.f1{left:-4px;}.ap-float.f2{right:-4px;}
  .ap-counter b{font-size:32px;}
  .ap-demo-ribbon{position:absolute;z-index:4;left:14px;bottom:58px;background:var(--naranja);color:#fff;font-size:11.5px;font-weight:700;letter-spacing:.6px;padding:6px 12px;border-radius:99px;box-shadow:0 4px 10px rgba(0,0,0,.2);}
  .ap-card{padding:20px;}
  .ap-tree-top{padding:12px 14px;}
}
@media (prefers-reduced-motion:reduce){
  .ap-float,.ap-cloud,.ap-tile{animation:none !important;}
  .ap-progress-bar i{transition:none;}
}
