:root{
  --color-primary:#B5121B;
  --color-primary-dark:#8E1212;
  --color-text:#211D1D;
  --color-muted:#706966;
  --color-background:#FFFFFF;
  --color-background-soft:#FAF8F5;
  --color-dark:#171717;
  --color-line:#E8E2DA;
  --font-serif:"Cormorant Garamond",Georgia,serif;
  --font-sans:"Inter",Arial,sans-serif;
  --red:var(--color-primary);
  --display:var(--font-serif);
  --body:var(--font-sans);
}
.page-pt{
  margin:0;
  background:var(--color-background);
  color:var(--color-text);
  font-family:var(--font-sans);
  font-size:16px;
  line-height:1.7;
  overflow-x:hidden;
}
.page-pt a{color:inherit;text-decoration:none}
.pt-wrap,.page-pt .container{width:min(1220px,calc(100% - 48px));margin:auto}

.pt-kicker,.page-pt .eyebrow{
  display:block;color:var(--color-primary);font-size:11px;font-weight:600;
  letter-spacing:.16em;text-transform:uppercase;
}
.page-pt .section-title{
  font-family:var(--font-serif);font-weight:500;font-size:clamp(32px,4vw,46px);
  line-height:1.12;letter-spacing:-.4px;margin:10px 0 18px;color:var(--color-text);
}
.page-pt .lead{color:var(--color-muted);max-width:680px;line-height:1.75}

/* Header */
.page-pt .header,.page-pt .pt-header{
  position:relative;inset:auto;height:72px;background:#fff;color:var(--color-text);
  z-index:200;overflow:visible;border-bottom:1px solid #eee8e2;
}
.page-pt .header-in{height:72px;display:flex;align-items:center;gap:18px;position:relative}
.page-pt .logo{color:var(--color-text);width:auto}
.page-pt .logo.has-photo{max-width:160px}
.page-pt .site-logo-img{display:block;height:44px;width:auto;max-width:160px;object-fit:contain}
.page-pt .logo-mark{background:var(--color-primary)}
.page-pt .header nav.primary-nav{margin-left:auto}
.page-pt .header-light .site-nav > .site-nav-item > .site-nav-link{color:var(--color-text);text-shadow:none}
.page-pt .site-nav > .is-active > .site-nav-link{color:var(--color-primary)}
.page-pt .actions{display:flex;align-items:center;gap:12px;margin-left:8px}
.page-pt .pt-burger{
  display:none;border:0;background:transparent;cursor:pointer;
  width:44px;height:44px;padding:10px;list-style:none;flex:none;
}
.page-pt .pt-burger::-webkit-details-marker,.page-pt .pt-burger::marker{display:none;content:""}
.page-pt .pt-burger span,
.page-pt .pt-burger span:before,
.page-pt .pt-burger span:after{
  display:block;width:20px;height:2px;background:var(--color-text);border-radius:2px;
  position:relative;
}
.page-pt .pt-burger span:before,
.page-pt .pt-burger span:after{
  content:"";position:absolute;left:0;
}
.page-pt .pt-burger span:before{top:-6px}
.page-pt .pt-burger span:after{top:6px}
.page-pt .pt-menu{display:none;position:static;margin:0;flex:none}
.page-pt .pt-menu-cta{display:flex;flex-direction:column;gap:10px;padding:18px 4px 4px}
.page-pt .pt-menu-cta .contact-btn{display:inline-flex;justify-content:center;width:100%;box-sizing:border-box}
.page-pt .pt-menu-panel{
  display:none;
  position:fixed;left:0;right:0;top:72px;z-index:250;
  width:100%;max-height:calc(100svh - 72px);overflow:auto;
  background:#fff;border-top:1px solid var(--color-line);
  padding:8px 18px 28px;box-shadow:0 18px 40px rgba(0,0,0,.12);
}
.page-pt .pt-menu[open] .pt-menu-panel{display:block}
.page-pt .gtranslate_wrapper{min-width:72px;min-height:28px;display:flex;align-items:center}
.page-pt .gtranslate_wrapper select{
  appearance:none;
  border:0;
  background:#f4f1ec;
  border-radius:999px;
  padding:8px 28px 8px 12px;
  color:var(--color-text);
  font:600 12px/1.2 var(--font-sans);
  background-image:linear-gradient(45deg,transparent 50%,#706966 50%),linear-gradient(135deg,#706966 50%,transparent 50%);
  background-position:calc(100% - 14px) 55%,calc(100% - 9px) 55%;
  background-size:5px 5px,5px 5px;
  background-repeat:no-repeat;
  cursor:pointer;
}
.page-pt .pt-search{width:36px;height:36px;display:grid;place-items:center;color:var(--color-text);text-decoration:none;border-radius:8px;transition:background .25s,color .25s}
.page-pt .pt-search:hover{background:#f6f1ec;color:#8E1212}
.page-pt .pill{padding:7px 12px;background:#f4f1ec;border-radius:999px;font-size:12px;font-weight:600}
.page-pt .contact-btn{
  padding:11px 20px;background:#8E1212;color:#fff;border-radius:8px;
  font-weight:600;font-size:13px;transition:background .3s ease;
}
.page-pt .contact-btn:hover{background:#6f0e0e;color:#fff}
.page-pt .pt-wa{
  padding:11px 18px;background:#1f9d57;color:#fff;border-radius:999px;
  font-weight:600;font-size:13px;
}
.page-pt .pt-wa:hover{background:#178a4a;color:#fff}

/* Heroes */
.pt-hero{position:relative;height:460px;color:#fff;overflow:hidden;background:#2a2a2a}
.pt-hero-destination{height:500px}
.pt-hero-simple{height:320px}
.pt-hero img,.pt-hero .pt-hero-photo{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%;
}
.pt-hero:after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(18,16,14,.55) 0%,rgba(18,16,14,.22) 48%,rgba(18,16,14,.18) 100%);
}
.pt-hero-in{position:relative;z-index:1;height:100%;display:flex;flex-direction:column;justify-content:center;padding:40px 0}
.pt-crumb{margin:0 0 16px;font-size:13px;opacity:.88}
.pt-hero .pt-kicker{color:#fff}
.pt-rule{width:42px;height:2px;background:var(--color-primary);margin:12px 0 16px;border:0}
.pt-hero h1{
  font-family:var(--font-serif);font-weight:500;font-size:clamp(40px,6vw,74px);
  line-height:.95;margin:0 0 16px;max-width:720px;letter-spacing:-.8px;
}
.pt-hero-simple h1{font-size:clamp(34px,5vw,52px)}
.page-pt .hero h1,.page-pt .hero-note,.page-pt .story-copy h2,.page-pt .culture h2,.page-pt .why h2,.page-pt .final-copy h2{
  font-family:var(--font-serif);
}
.pt-hero-sub{max-width:480px;margin:0;font-size:17px;line-height:1.5;opacity:.95}

/* Content restyle — corporate/destination inherited markup */
.page-pt .about-intro,.page-pt .about-mission,.page-pt .about-offers,
.page-pt .dest-intro,.page-pt .dest-index,.page-pt .dest-gallery,.page-pt .dest-related{padding:90px 0}
.page-pt .about-mission,.page-pt .dest-gallery,.page-pt .dest-related{background:var(--color-background-soft)}
.page-pt .about-intro p,.page-pt .about-mission p,.page-pt .dest-intro p{color:var(--color-muted);max-width:680px}
.page-pt .about-facts{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.page-pt .about-facts article{
  background:transparent;border:0;box-shadow:none;border-top:1px solid var(--color-line);
  border-radius:0;padding:16px 0;
}
.page-pt .about-facts b{font-family:var(--font-serif);font-size:28px;font-weight:500}
.page-pt .offer-card,.page-pt .legal-card{
  background:transparent;border:0;box-shadow:none;border-right:1px solid var(--color-line);
  border-radius:0;padding:8px 28px;
}
.page-pt .offer-grid .offer-card:last-child,.page-pt .legal-grid .legal-card:last-child{border-right:0}
.page-pt .offer-card h3,.page-pt .legal-card h3,.page-pt .pay-card h3{
  font-family:var(--font-serif);font-weight:500;font-size:26px;
}
.page-pt .pay-card{
  background:#fff;border:1px solid var(--color-line);box-shadow:none;border-radius:8px;
}
.page-pt .faq-list details{
  background:transparent;border:0;border-bottom:1px solid var(--color-line);
  border-radius:0;box-shadow:none;
}
.page-pt .faq-list summary{font-family:var(--font-serif);font-size:22px;font-weight:500}
.page-pt .gallery-grid img{border-radius:8px}
.page-pt .dest-tour-card,.page-pt .dest-index-card{
  box-shadow:none;border-radius:8px;overflow:hidden;border:1px solid var(--color-line);
}
.page-pt .dest-gallery-grid figure{border-radius:8px}

/* Footer */
.page-pt .pt-footer, .page-pt footer.pt-footer{padding:56px 0 18px;background:var(--color-dark);color:#fff}
.page-pt .footer-grid{display:grid;grid-template-columns:1.3fr .9fr .9fr 1fr;gap:36px}
.page-pt .footer-logo{color:#fff}
.page-pt .pt-footer p,.page-pt .pt-footer a{color:#b7b1ab;font-size:13px;line-height:1.7}
.page-pt .footer-title{color:#fff;font-size:13px;font-weight:600}
.page-pt .footer-bottom{
  margin-top:32px;padding-top:16px;border-top:1px solid #2c2c2c;
  display:flex;justify-content:space-between;gap:16px;color:#8a8580;font-size:12px;
}
.page-pt .footer-bottom a{color:#8a8580}
.page-pt .footer-bottom a:hover,.page-pt .pt-footer a:hover{color:#fff}

@media(max-width:980px){
  .pt-wrap,.page-pt .container{width:min(100% - 36px,1220px)}
  .page-pt .header nav.primary-nav{display:none}
  .page-pt .pt-menu{display:block}
  .page-pt .pt-burger{display:grid;place-items:center}
  .page-pt .actions .contact-btn{display:none}
  .page-pt .actions{margin-left:auto}
  .page-pt .logo.has-photo{max-width:120px}
  .pt-hero,.pt-hero-destination{height:420px}
  .pt-hero-simple{height:280px}
  .page-pt .about-intro-grid,.page-pt .dest-intro-grid,.page-pt .offer-grid,
  .page-pt .legal-grid,.page-pt .pay-grid,.page-pt .dest-practical-grid,
  .page-pt .dest-tour-grid,.page-pt .footer-grid{grid-template-columns:1fr 1fr}
  .page-pt .offer-card,.page-pt .legal-card{border-right:0;border-top:1px solid var(--color-line);padding:24px 0}
}
@media(max-width:768px){
  .pt-hero,.pt-hero-destination{height:500px}
  .pt-hero h1{font-size:48px}
  .page-pt .pt-search,.page-pt .pill{display:none}
  .page-pt .about-facts,.page-pt .gallery-grid,.page-pt .dest-index-grid,
  .page-pt .dest-site-grid{grid-template-columns:1fr}
}
@media(max-width:600px){
  .pt-wrap,.page-pt .container{width:min(100% - 28px,1220px)}
  .page-pt .footer-grid,.page-pt .footer-bottom,
  .page-pt .about-intro-grid,.page-pt .dest-intro-grid,
  .page-pt .legal-grid,.page-pt .pay-grid,.page-pt .dest-practical-grid,
  .page-pt .dest-tour-grid{grid-template-columns:1fr;display:grid}
}
