/* =========================================================
   HOME (solo portada)
   Se apoya en base.css (variables, header, botones)
========================================================= */

.turat-home .turat-section{ padding:72px 0; }
.turat-home .turat-section-head{
  display:flex;
  gap:14px;
  align-items:flex-end;
  justify-content:space-between;
  margin-bottom:22px;
}
@media (max-width:900px){
  .turat-home .turat-section-head{ flex-direction:column; align-items:flex-start; }
}

/* Tipografía base Home */
.turat-home .turat-h1{
  font-size: clamp(34px, 4.2vw, 60px);
  line-height:1.05;
  margin:14px 0 10px;
  color:#fff;
  letter-spacing:-.02em;
}
.turat-home .turat-h2{
  font-size: clamp(26px, 2.6vw, 40px);
  line-height:1.15;
  margin:0 0 8px;
  color:#121215;
  letter-spacing:-.01em;
}
.turat-home .turat-sub{
  color:#4b4f60;
  max-width:72ch;
  margin:0;
}

/* =========================================================
   HERO (imagen destacada)
========================================================= */
.turat-hero{
  position:relative;
  min-height:82vh;
  display:flex;
  align-items:center;
  background: #0b0b0c center/cover no-repeat;
}
.turat-hero-overlay{
  position:absolute;
  inset:0;
  background: linear-gradient(
    90deg,
    rgba(6,6,7,.90),
    rgba(6,6,7,.55) 48%,
    rgba(6,6,7,.70)
  );
}
.turat-hero-inner{
  position:relative;
  padding:86px 0 74px;
}

.turat-chips{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.turat-chip{
  color:rgba(255,255,255,.88);
  border:1px solid rgba(255,255,255,.14);
  padding:8px 12px;
  border-radius:999px;
  font-size:13px;
  background:rgba(10,10,12,.28);
}
.turat-hero-p{
  color:rgba(255,255,255,.84);
  max-width:62ch;
  margin:10px 0 0;
}
.turat-hero-cta{
  display:flex;
  gap:12px;
  margin-top:18px;
  flex-wrap:wrap;
}
.turat-hero-quick-grid{
  margin-top:24px;
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:14px;
}
.turat-hero-quick{
  display:grid;
  gap:8px;
  padding:18px;
  border-radius:20px;
  text-decoration:none;
  color:#fff;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  backdrop-filter: blur(12px);
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.turat-hero-quick:hover{
  transform: translateY(-3px);
  border-color: rgba(209,175,91,.52);
  background: rgba(255,255,255,.11);
}
.turat-hero-quick strong{
  font-size:18px;
  line-height:1.1;
}
.turat-hero-quick span{
  color:rgba(255,255,255,.78);
  line-height:1.52;
  font-size:14px;
}
.turat-hero-quick em{
  font-style:normal;
  font-weight:900;
  color:var(--turat-gold);
}
@media (max-width: 1100px){
  .turat-hero-quick-grid{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 680px){
  .turat-hero-quick-grid{ grid-template-columns:1fr; }
}

/* Botón “ghost invert” para rescate */
.turat-btn-ghost-invert{
  border:1px solid rgba(255,255,255,.22);
  color:#fff;
  background:transparent;
}
.turat-btn-ghost-invert:hover{
  border-color:rgba(209,175,91,.55);
  color:var(--turat-gold);
  background: rgba(0,0,0,.15);
}

/* =========================================================
   POR QUÉ TURAT (timeline dorado)
========================================================= */
.turat-why{ background:#fff; }

.turat-timeline{
  margin-top:22px;
  border-left: 1px solid rgba(209,175,91,.65);
  padding-left: 22px;
}
.turat-ti{
  position:relative;
  padding:14px 0;
}
.turat-ti-dot{
  position:absolute;
  left:-31px;
  top:22px;
  width:14px;
  height:14px;
  border-radius:999px;
  background: linear-gradient(135deg, var(--turat-gold), var(--turat-gold2));
  box-shadow: 0 0 0 6px rgba(209,175,91,.14);
}
.turat-ti-content h3{
  margin:0 0 6px;
  color:#121215;
  font-size:18px;
}
.turat-ti-content p{
  margin:0;
  color:#4b4f60;
  max-width:72ch;
}

/* =========================================================
   SERVICIOS (mosaico)
   - Blancas con hover dorado
   - Rescate en negro
========================================================= */
.turat-services{ background:#fff; }

/* Grid mosaico 2x2 */
.turat-collage{
  display:grid;
  grid-template-columns: repeat(12, 1fr);
  gap:18px;
  margin-top:22px;
}

/* Card base */
.turat-collage-card{
  position:relative;
  display:block;
  border-radius:18px;
  padding:22px;
  background:#fff;
  border:1px solid rgba(15,15,18,.10);
  box-shadow: 0 12px 28px rgba(0,0,0,.06);
  text-decoration:none;
  color:#121215;
  overflow:hidden;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.turat-collage-card:hover{
  transform: translateY(-3px);
  border-color: rgba(209,175,91,.55);
  box-shadow: 0 18px 44px rgba(0,0,0,.10);
}

/* “brillo” muy sutil para evitar plano */
.turat-collage-card::before{
  content:"";
  position:absolute;
  inset:-40%;
  background: radial-gradient(circle at 20% 20%, rgba(209,175,91,.10), transparent 55%);
  transform: rotate(10deg);
  pointer-events:none;
}
.turat-collage-card > *{ position:relative; z-index:1; }

.turat-card-kicker{
  display:inline-block;
  font-size:12px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#6b7185;
}
.turat-collage-card h3{
  margin:10px 0 8px;
  font-size:22px;
  transition: color .18s ease;
}
.turat-collage-card p{
  margin:0;
  color:#4b4f60;
  max-width:56ch;
}
.turat-collage-cta{
  display:inline-flex;
  margin-top:14px;
  font-weight:900;
  color:#111;
  transition: color .18s ease;
}

/* Hover dorado (título + cta) */
.turat-collage-card:hover h3,
.turat-collage-card:hover .turat-collage-cta{
  color: var(--turat-gold2);
}

/* Card Rescate (oscura) */
.turat-collage-card.is-dark{
  background:
    radial-gradient(1200px 420px at 10% 0%, rgba(209,175,91,.18), transparent 60%),
    #0b0b0c;
  border:1px solid rgba(255,255,255,.10);
  box-shadow: 0 22px 60px rgba(0,0,0,.40);
  color:#fff;
}
.turat-collage-card.is-dark .turat-card-kicker{ color: rgba(255,255,255,.85); }
.turat-collage-card.is-dark p{ color: rgba(255,255,255,.78); }
.turat-collage-card.is-dark .turat-collage-cta{ color: rgba(255,255,255,.92); }
.turat-collage-card.is-dark:hover h3,
.turat-collage-card.is-dark:hover .turat-collage-cta{
  color: var(--turat-gold);
}
.turat-card-kicker-invert{ color: rgba(255,255,255,.86) !important; }
.turat-collage-cta.is-gold{ color: var(--turat-gold) !important; }

/* Layout mosaico */
.turat-collage-card.is-a{ grid-column:1 / span 7; }
.turat-collage-card.is-b{ grid-column:8 / span 5; }
.turat-collage-card.is-c{ grid-column:1 / span 5; }
.turat-collage-card.is-d{ grid-column:6 / span 7; }

@media (max-width: 980px){
  .turat-collage{ grid-template-columns:1fr; }
  .turat-collage-card.is-a,
  .turat-collage-card.is-b,
  .turat-collage-card.is-c,
  .turat-collage-card.is-d{ grid-column:auto; }
}

/* =========================================================
   HOME CONCIERGE
========================================================= */
.turat-home-concierge{
  background: linear-gradient(180deg, rgba(15,15,18,.03), rgba(15,15,18,.00));
}
.turat-home-concierge-card{
  display:grid;
  grid-template-columns:minmax(0, 1.15fr) minmax(320px, .85fr);
  gap:18px;
  padding:26px;
  border-radius:28px;
  background:
    radial-gradient(900px 320px at 8% 10%, rgba(209,175,91,.20), transparent 60%),
    linear-gradient(145deg, #0f0f12, #1c1c21);
  color:#fff;
  border:1px solid rgba(255,255,255,.10);
  box-shadow: 0 22px 60px rgba(0,0,0,.18);
}
.turat-home-concierge-copy .turat-eyebrow{
  display:inline-flex;
  margin-bottom:10px;
  font-size:12px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:rgba(255,255,255,.64);
}
.turat-home-concierge-copy .turat-h2{
  color:#fff;
}
.turat-home-concierge-copy .turat-sub{
  color:rgba(255,255,255,.82);
  margin-top:12px;
}
.turat-home-concierge-actions{
  display:grid;
  align-content:center;
  gap:12px;
}
@media (max-width: 980px){
  .turat-home-concierge-card{ grid-template-columns:1fr; }
}

/* =========================================================
   RESCATE (spotlight elegante + tabs)
========================================================= */
.turat-rescate-spotlight{
  background:
    radial-gradient(1200px 600px at 15% 10%, rgba(209,175,91,.18), rgba(0,0,0,0) 60%),
    radial-gradient(1000px 500px at 90% 30%, rgba(174,141,65,.12), rgba(0,0,0,0) 55%),
    linear-gradient(180deg, #070707, #0b0b0b);
  color:#fff;
}

.turat-res-spot-grid{
  display:grid;
  grid-template-columns: 1.05fr .95fr;
  gap:36px;
  align-items:center;
}
@media (max-width: 1024px){
  .turat-res-spot-grid{ grid-template-columns:1fr; }
}

/* Copy box */
.turat-res-spot-copy{
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  border-radius: 22px;
  padding: 22px;
  box-shadow: 0 22px 60px rgba(0,0,0,.40);
}

.turat-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color: rgba(255,255,255,.75);
  margin-bottom:10px;
}
.turat-eyebrow:before{
  content:"";
  width:10px;height:10px;border-radius:999px;
  background: linear-gradient(135deg, var(--turat-gold), var(--turat-gold2));
  display:inline-block;
}
.turat-h2-invert{ color:#fff !important; } /* clave: que no se vea negro */
.turat-sub-invert{ color: rgba(255,255,255,.82) !important; } /* clave: texto visible */

.turat-res-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:14px;
}

/* Media */
.turat-res-spot-media{
  position:relative;
  border-radius:22px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.04);
  box-shadow: 0 22px 70px rgba(0,0,0,.55);
  min-height: 420px;
}
.turat-res-spot-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.turat-res-spot-media:after{
  content:"";
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(0,0,0,.05) 40%, rgba(0,0,0,.65) 100%);
  pointer-events:none;
}
@media (max-width:1024px){
  .turat-res-spot-media{ min-height:320px; }
}

/* Trust row */
.turat-trust-row{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:12px;
  margin-top:18px;
}
@media(max-width:980px){ .turat-trust-row{ grid-template-columns:1fr; } }

.turat-trust{
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  border-radius: 16px;
  padding: 14px;
}
.turat-trust-k{
  font-weight:900;
  color: var(--turat-gold);
  margin-bottom:6px;
}
.turat-trust-v{
  color: rgba(255,255,255,.78);
  font-size:14px;
}

/* Tabs */
.turat-res-tabs{ margin-top: 30px; }
.turat-res-tablist{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:14px;
}
.turat-res-tab{
  border:1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.04);
  color: rgba(255,255,255,.86);
  padding:10px 12px;
  border-radius:999px;
  cursor:pointer;
  font-weight:900;
  transition: background .18s ease, border-color .18s ease, color .18s ease;
}
.turat-res-tab:hover{
  border-color: rgba(209,175,91,.40);
  color: var(--turat-gold);
  background: rgba(0,0,0,.12);
}
.turat-res-tab.is-active{
  background: linear-gradient(135deg, var(--turat-gold), var(--turat-gold2));
  color:#111;
  border-color: transparent;
}

.turat-res-panels{
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  border-radius: 22px;
  padding: 18px;
}
.turat-res-panel{ display:none; }
.turat-res-panel.is-active{ display:block; }
.turat-res-panel h3{ margin:0 0 8px; color:#fff; }
.turat-res-panel p{ margin:0; color: rgba(255,255,255,.78); }

/* =========================================================
   PROYECTOS (carrusel elegante)
========================================================= */
.turat-projects{ background:#f7f7f9; }

.turat-projects-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.turat-proj-pill{
  display:inline-flex;
  padding:10px 14px;
  border-radius:999px;
  border:1px solid rgba(209,175,91,.35);
  background:#fff;
  font-weight:900;
  color:#111;
  transition: background .18s ease, color .18s ease, border-color .18s ease;
}
.turat-proj-pill:hover{
  background: rgba(209,175,91,.12);
  border-color: rgba(209,175,91,.55);
  color:#111;
}

/* Contenedor carrusel */
.turat-carousel{
  position:relative;
  border-radius: var(--turat-radius);
  background:#fff;
  border:1px solid rgba(15,15,18,.08);
  padding:18px 54px;
  box-shadow: 0 12px 28px rgba(0,0,0,.06);
}
@media (max-width: 720px){
  .turat-carousel{ padding:14px 14px; }
}

/* Botones carrusel */
.turat-car-btn{
  position:absolute;
  top:50%;
  transform: translateY(-50%);
  width:38px;
  height:38px;
  border-radius:999px;
  border:1px solid rgba(15,15,18,.14);
  background:#fff;
  cursor:pointer;
}
.turat-car-prev{ left:12px; }
.turat-car-next{ right:12px; }
.turat-car-prev::before{ content:"‹"; font-size:22px; display:block; line-height:36px; }
.turat-car-next::before{ content:"›"; font-size:22px; display:block; line-height:36px; }
@media (max-width: 720px){
  .turat-car-btn{ display:none; }
}

.turat-car-track{
  display:flex;
  gap:18px;
  overflow:auto;
  scroll-snap-type:x mandatory;
  padding-bottom:4px;
}
.turat-car-track::-webkit-scrollbar{ height:10px; }
.turat-car-track::-webkit-scrollbar-thumb{
  background: rgba(15,15,18,.12);
  border-radius:999px;
}

/* Tarjeta proyecto */
.turat-proj-card{
  flex:0 0 340px;
  scroll-snap-align:start;
  border-radius: var(--turat-radius);
  overflow:hidden;
  border:1px solid rgba(15,15,18,.10);
  background:#fff;
  text-decoration:none;
  color:#121215;
  box-shadow: 0 14px 30px rgba(0,0,0,.06);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.turat-proj-card:hover{
  transform: translateY(-3px);
  border-color: rgba(209,175,91,.55);
  box-shadow: 0 20px 44px rgba(0,0,0,.10);
}

.turat-proj-img img{
  width:100%;
  height:190px;
  object-fit:cover;
  display:block;
}
.turat-proj-body{ padding:14px; }
.turat-proj-body h3{ margin:0 0 6px; font-size:18px; }
.turat-proj-body p{ margin:0; color:#545a6b; }
.turat-proj-cta{
  display:inline-flex;
  margin-top:10px;
  font-weight:900;
  color: var(--turat-gold2);
}
.turat-proj-card:hover .turat-proj-cta{ color: var(--turat-gold); }

/* =========================================================
   CONTACTO + UBICACIÓN (pro)
========================================================= */
.turat-contact-grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:18px;
}
@media (max-width:980px){
  .turat-contact-grid{ grid-template-columns:1fr; }
}

.turat-contact-card,
.turat-loc-card{
  border:1px solid rgba(15,15,18,.10);
  border-radius:22px;
  background:#fff;
  padding:18px;
  box-shadow: 0 12px 28px rgba(0,0,0,.06);
}

.turat-form{ display:grid; gap:10px; margin-top:12px; }
.turat-input{
  width:100%;
  border-radius:14px;
  border:1px solid rgba(15,15,18,.14);
  padding:12px;
  outline:none;
  font-size:15px;
}
.turat-input:focus{
  border-color: rgba(209,175,91,.70);
  box-shadow: 0 0 0 4px rgba(209,175,91,.12);
}
.turat-textarea{ min-height:120px; resize:vertical; }

.turat-map{
  width:100%;
  height: 320px;
  border:0;
  border-radius:18px;
  overflow:hidden;
}
