/* Travel S Helper — Places Editorial System V7
   PILOT: Galata Tower only. The classes are intentionally generic enough
   to become the shared Places UI after visual approval. */

.tsh-place-v7{--v7-ink:#1f1e1b;--v7-muted:#6f6a62;--v7-line:#e8e3da;--v7-soft:#f7f5f1;--v7-accent:#a66b22;--v7-accent-soft:#f2e7d6}

/* HERO — editorial, not an app card */
.tsh-place-v7 .place-hero{padding-top:34px}
.tsh-place-v7 .hero-card{overflow:visible;border-radius:0;background:transparent;color:var(--v7-ink);box-shadow:none}
.tsh-place-v7 .hero-copy{padding:34px 0 25px;background:none}
.tsh-place-v7 .chips{gap:0;margin:0 0 13px;align-items:center}
.tsh-place-v7 .chip{padding:0;border:0;border-radius:0;background:none;color:#77716a;font-size:9px;font-weight:800;letter-spacing:.15em}
.tsh-place-v7 .chip+.chip:before{content:'·';display:inline-block;margin:0 9px;color:#b9b1a7}
.tsh-place-v7 .chip.amber{color:var(--v7-accent)}
.tsh-place-v7 .hero-copy h1{max-width:980px;margin:0 0 12px;color:var(--v7-ink);font-size:clamp(46px,6vw,74px);line-height:.98;letter-spacing:-.055em;font-weight:790}
.tsh-place-v7 .hero-copy p{max-width:800px;margin:0;color:#625e58;font-size:18px;line-height:1.6}
.tsh-place-v7 .gallery{gap:8px;overflow:hidden;border-radius:24px;background:#ece8e1;box-shadow:0 20px 55px rgba(37,32,25,.10)}
.tsh-place-v7 .gallery button{background:#ded9d1}
.tsh-place-v7 .gallery-count{right:15px;bottom:15px;border:0;border-radius:999px;background:rgba(20,18,16,.82);padding:7px 11px;font-size:9px;letter-spacing:.04em}

/* INTRO + VISIT RAIL */
.tsh-place-v7 .content-grid{grid-template-columns:minmax(0,1fr) 360px;gap:66px;padding:72px 0 24px}
.tsh-place-v7 .v7-intro{padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}
.tsh-place-v7 .v7-eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:12px;color:var(--v7-accent);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.16em}
.tsh-place-v7 .v7-eyebrow:before{content:'';width:28px;height:1px;background:var(--v7-accent)}
.tsh-place-v7 .v7-intro h2{max-width:780px;margin:0 0 28px;color:var(--v7-ink);font-size:clamp(34px,4vw,48px);line-height:1.06;letter-spacing:-.045em;font-weight:760}
.tsh-place-v7 .v7-intro .galata-intro-copy{max-width:790px}
.tsh-place-v7 .v7-intro .galata-intro-copy p{margin:0 0 23px;color:#504d48;font-size:16.5px;line-height:1.87}
.tsh-place-v7 .v7-intro .galata-intro-copy p:first-child{color:#302e2a;font-size:19px;line-height:1.75}
.tsh-place-v7 .v7-intro .galata-intro-copy p:last-child{margin-bottom:0}

.tsh-place-v7 .v7-visit-rail{position:sticky;top:132px;display:block}
.tsh-place-v7 .v7-visit-card{overflow:hidden;background:var(--v7-soft);border:1px solid #ebe6de;border-radius:22px;box-shadow:0 18px 45px rgba(52,45,36,.08)}
.tsh-place-v7 .v7-visit-head{padding:25px 25px 20px}
.tsh-place-v7 .v7-visit-head .v7-eyebrow{margin-bottom:9px}
.tsh-place-v7 .v7-visit-head h2{margin:0;color:var(--v7-ink);font-size:26px;line-height:1.1;letter-spacing:-.035em;font-weight:760}
.tsh-place-v7 .v7-visit-section{padding:21px 25px;border-top:1px solid var(--v7-line)}
.tsh-place-v7 .v7-visit-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;color:#706b64;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.13em}
.tsh-place-v7 .v7-live-status{display:flex;align-items:center;gap:6px;color:#256b48;font-size:9px;font-weight:800;letter-spacing:0;text-transform:none}
.tsh-place-v7 .v7-live-status i{width:7px;height:7px;border-radius:50%;background:#2f8a60;box-shadow:0 0 0 4px rgba(47,138,96,.10)}
.tsh-place-v7 .v7-live-status.is-closed{color:#9a4e42}.tsh-place-v7 .v7-live-status.is-closed i{background:#b75b4f;box-shadow:0 0 0 4px rgba(183,91,79,.10)}
.tsh-place-v7 .v7-hours-primary{display:flex;justify-content:space-between;align-items:end;gap:18px}
.tsh-place-v7 .v7-hours-primary strong{color:var(--v7-ink);font-size:31px;line-height:1;letter-spacing:-.05em;font-weight:760}
.tsh-place-v7 .v7-hours-primary span{padding-bottom:2px;color:#77716a;font-size:10px}
.tsh-place-v7 .v7-hours-secondary{display:flex;justify-content:space-between;gap:20px;margin-top:13px;padding-top:13px;border-top:1px solid #e4ded5;color:#6f6962;font-size:11px}
.tsh-place-v7 .v7-hours-secondary strong{color:#36332f;font-size:11px}
.tsh-place-v7 .v7-micro{margin:11px 0 0;color:#89827a;font-size:9.5px;line-height:1.55}

.tsh-place-v7 .v7-facts{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;margin:0}
.tsh-place-v7 .v7-fact{padding:11px 0;border-top:1px solid #e4ded5}
.tsh-place-v7 .v7-fact:nth-child(-n+2){border-top:0;padding-top:0}
.tsh-place-v7 .v7-fact dt{margin:0 0 4px;color:#9a9289;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}
.tsh-place-v7 .v7-fact dd{margin:0;color:#302e2a;font-size:11.5px;line-height:1.42;font-weight:680}

.tsh-place-v7 .v7-location-name{margin:0 0 5px;color:var(--v7-ink);font-size:16px;font-weight:760;letter-spacing:-.02em}
.tsh-place-v7 .v7-address{margin:0;color:#77716a;font-size:10.5px;line-height:1.55;font-style:normal}
.tsh-place-v7 .v7-transit{margin:9px 0 0;color:#5f5a54;font-size:10px;line-height:1.5}
.tsh-place-v7 .v7-map{height:188px;margin-top:15px;overflow:hidden;border:0;border-radius:15px;background:#ddd8d0}
.tsh-place-v7 .v7-map iframe{width:100%;height:100%;border:0;filter:saturate(.78) contrast(.96)}
.tsh-place-v7 .v7-map-actions{display:grid;grid-template-columns:1.2fr .8fr;gap:8px;margin-top:10px}
.tsh-place-v7 .v7-map-actions a{display:flex;align-items:center;justify-content:center;min-height:38px;border:1px solid #d9d2c8;border-radius:10px;color:#3c3935;background:#fff;font-size:10px;font-weight:800}
.tsh-place-v7 .v7-map-actions a:first-child{border-color:#292622;background:#292622;color:#fff}
.tsh-place-v7 .v7-source{padding:14px 25px 16px;border-top:1px solid var(--v7-line);color:#948d84;font-size:8.5px;line-height:1.55}
.tsh-place-v7 .v7-source a{color:#6f665c;font-weight:750;text-decoration:underline;text-underline-offset:2px}

/* LONGFORM — quiet editorial rhythm */
.tsh-place-v7 .galata-v6-native-shell{padding:6px 0 16px}
.tsh-place-v7 .galata-v6-native-shell .native-longform{width:min(100%,800px);padding-bottom:94px;color:#4f4b46}
.tsh-place-v7 .galata-v6-native-shell .chapter{padding-top:96px}
.tsh-place-v7 .galata-v6-native-shell .chapter:first-child{padding-top:70px}
.tsh-place-v7 .galata-v6-native-shell .chapter-head{margin-bottom:29px}
.tsh-place-v7 .galata-v6-native-shell .section-label{display:flex;align-items:center;gap:10px;margin:0 0 12px;color:var(--v7-accent);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.15em}
.tsh-place-v7 .galata-v6-native-shell .section-label:before{content:'';width:28px;height:1px;background:var(--v7-accent)}
.tsh-place-v7 .galata-v6-native-shell .chapter h2{margin:0;color:var(--v7-ink);font-size:clamp(35px,4.2vw,48px);line-height:1.04;letter-spacing:-.05em;font-weight:750}
.tsh-place-v7 .galata-v6-native-shell .chapter-deck{max-width:720px;margin:14px 0 0;color:#77716a;font-size:16px;line-height:1.65}
.tsh-place-v7 .galata-v6-native-shell .chapter p{margin:0 0 22px;color:#514d48;font-size:16.5px;line-height:1.88}
.tsh-place-v7 .galata-v6-native-shell .chapter .lede{margin-bottom:24px;color:#302e2a;font-size:18.5px;line-height:1.78}
.tsh-place-v7 .galata-v6-native-shell .chapter h3{margin:35px 0 11px;color:#302e2a;font-size:21px;line-height:1.25;letter-spacing:-.025em;font-weight:760}
.tsh-place-v7 .galata-v6-native-shell .rule{display:none}

/* IMAGES — no text overlays, no sidebar postcards */
.tsh-place-v7 .galata-v6-native-shell .editorial-image{width:min(1100px,calc(100vw - 56px));margin:82px 0 4px 50%;transform:translateX(-50%)}
.tsh-place-v7 .galata-v6-native-shell .editorial-image img{display:block;width:100%;height:auto;max-height:none;border-radius:22px;box-shadow:0 18px 45px rgba(40,34,27,.09)}
.tsh-place-v7 .galata-v6-native-shell .editorial-image figcaption{display:flex;gap:10px;align-items:flex-start;margin-top:11px;color:#827b73;font-size:10px;line-height:1.55}
.tsh-place-v7 .galata-v6-native-shell .editorial-image figcaption:before{content:'';flex:0 0 26px;height:1px;margin-top:7px;background:#c4aa82}

/* FLOOR + ROUTE — information, not card decoration */
.tsh-place-v7 .galata-v6-native-shell .floor-wrap{margin:38px 0 32px;border-top:1px solid #ded8cf}
.tsh-place-v7 .galata-v6-native-shell .floor{grid-template-columns:74px minmax(0,1fr);gap:20px;padding:20px 0;border-bottom:1px solid #e7e2da}
.tsh-place-v7 .galata-v6-native-shell .floor-num{color:#a87838;font-size:24px;font-weight:760}
.tsh-place-v7 .galata-v6-native-shell .floor-copy h3{margin:0 0 5px;font-size:16px;font-weight:760}
.tsh-place-v7 .galata-v6-native-shell .floor-copy p{margin:0;color:#68635d;font-size:13px;line-height:1.68}
.tsh-place-v7 .galata-v6-native-shell .route{margin:38px 0 32px;border-top:1px solid #ded8cf}
.tsh-place-v7 .galata-v6-native-shell .route-stop{grid-template-columns:55px minmax(0,1fr);gap:15px;padding:17px 0;border-bottom:1px solid #e7e2da}
.tsh-place-v7 .galata-v6-native-shell .route-stop>b{color:#a87838;font-size:12px;font-weight:850;letter-spacing:.07em}
.tsh-place-v7 .galata-v6-native-shell .route-stop strong{font-size:13.5px;font-weight:750}
.tsh-place-v7 .galata-v6-native-shell .route-stop span{margin-top:4px;color:#77716a;font-size:11.5px;line-height:1.55}

/* Nearby is legitimately card-based; make it quieter than the old utility cards. */
.tsh-place-v7 .nearby-section{padding-top:50px}
.tsh-place-v7 .nearby-section .section-title{margin-bottom:22px}
.tsh-place-v7 .nearby-section .section-title h2{font-size:34px;font-weight:750}
.tsh-place-v7 .nearby-section .place-card{border-color:#ebe6de;border-radius:19px;box-shadow:none}
.tsh-place-v7 .nearby-section .place-card:hover{border-color:#d8c3a3;box-shadow:0 16px 38px rgba(39,33,26,.09)}

@media(max-width:1080px){
  .tsh-place-v7 .content-grid{grid-template-columns:1fr;gap:50px}
  .tsh-place-v7 .v7-visit-rail{position:relative;top:auto;max-width:760px}
  .tsh-place-v7 .v7-visit-card{display:grid;grid-template-columns:1fr 1fr}
  .tsh-place-v7 .v7-visit-head,.tsh-place-v7 .v7-source{grid-column:1/-1}
  .tsh-place-v7 .v7-location-section{grid-column:1/-1}
  .tsh-place-v7 .v7-visit-section{border-top:1px solid var(--v7-line)}
}
@media(max-width:720px){
  .tsh-place-v7 .place-hero{padding-top:20px}
  .tsh-place-v7 .hero-copy{padding:24px 0 18px}
  .tsh-place-v7 .hero-copy h1{font-size:45px}
  .tsh-place-v7 .hero-copy p{font-size:16px}
  .tsh-place-v7 .gallery{border-radius:17px;gap:5px}
  .tsh-place-v7 .content-grid{gap:40px;padding:48px 0 10px}
  .tsh-place-v7 .v7-intro h2{font-size:35px}
  .tsh-place-v7 .v7-intro .galata-intro-copy p{font-size:15.5px;line-height:1.82}
  .tsh-place-v7 .v7-intro .galata-intro-copy p:first-child{font-size:17.5px}
  .tsh-place-v7 .v7-visit-card{display:block;border-radius:18px}
  .tsh-place-v7 .v7-visit-head,.tsh-place-v7 .v7-visit-section{padding-left:20px;padding-right:20px}
  .tsh-place-v7 .v7-hours-primary strong{font-size:29px}
  .tsh-place-v7 .galata-v6-native-shell .chapter{padding-top:72px}
  .tsh-place-v7 .galata-v6-native-shell .chapter:first-child{padding-top:55px}
  .tsh-place-v7 .galata-v6-native-shell .chapter h2{font-size:34px}
  .tsh-place-v7 .galata-v6-native-shell .chapter p{font-size:15.5px;line-height:1.82}
  .tsh-place-v7 .galata-v6-native-shell .chapter .lede{font-size:17.5px}
  .tsh-place-v7 .galata-v6-native-shell .editorial-image{width:calc(100vw - 28px);margin-top:60px}
  .tsh-place-v7 .galata-v6-native-shell .editorial-image img{border-radius:16px}
}
