
:root{
    --pmt-font-heading:'Cormorant Garamond',serif;
    --pmt-font-body:'Inter',sans-serif;
    --pmt-h1-size:80px;
    --pmt-h2-size:58px;
    --pmt-h3-size:38px;
    --pmt-h4-size:28px;
    --pmt-h5-size:22px;
    --pmt-h6-size:18px;
    --pmt-body-size:16px;
    --pmt-heading-weight:400;
    --pmt-body-weight:400;
    --pmt-heading-spacing:-0.03em;
    --pmt-body-spacing:0em;
    --pmt-heading-transform:none;
    --pmt-body-transform:none;
    --pmt-color-heading:#1f1a17;
    --pmt-color-body:#4f4338;
    --pmt-color-link:#9b6b3a;
    --pmt-color-link-hover:#6b4520;
    --pmt-header-bg:rgba(255,255,255,0);
    --pmt-header-bg-scrolled:rgba(248,243,235,0.92);
    --pmt-header-color:#ffffff;
    --pmt-header-color-scrolled:#1f1a17;
    --pmt-header-hover:#d7ab65;
    --pmt-header-spacing:0.18em;
    --pmt-header-transform:uppercase;
    --pmt-footer-bg:#130f0d;
    --pmt-footer-heading:#ffffff;
    --pmt-footer-text:rgba(255,255,255,0.72);
    --pmt-footer-link:#ffffff;
    --pmt-footer-size:14px;
    --pmt-bg:#f8f3eb;
    --pmt-white:#fffdf9;
    --pmt-line:rgba(136,106,70,.16);
    --pmt-radius:26px;
    --pmt-container:1260px;
    --pmt-shadow:0 18px 50px rgba(24,20,18,.08);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    background:var(--pmt-bg);
    color:var(--pmt-color-body);
    font-family:var(--pmt-font-body);
    font-size:var(--pmt-body-size);
    font-weight:var(--pmt-body-weight);
    letter-spacing:var(--pmt-body-spacing);
    text-transform:var(--pmt-body-transform);
    line-height:1.7;
    -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto}
a{color:var(--pmt-color-link);text-decoration:none}
a:hover{color:var(--pmt-color-link-hover)}
.pmt-links-underlined a{text-decoration:underline}
.container{width:min(calc(100% - 48px), var(--pmt-container));margin:0 auto}

h1,h2,h3,h4,h5,h6,.entry-title,.footer-brand,.brand-name{
    color:var(--pmt-color-heading);
    font-family:var(--pmt-font-heading);
    font-weight:var(--pmt-heading-weight);
    letter-spacing:var(--pmt-heading-spacing);
    text-transform:var(--pmt-heading-transform);
    line-height:1.05;
    margin:0 0 .35em;
}
h1,.entry-title{font-size:clamp(42px,7vw,var(--pmt-h1-size))}
h2{font-size:clamp(34px,5vw,var(--pmt-h2-size))}
h3{font-size:clamp(28px,4vw,var(--pmt-h3-size))}
h4{font-size:var(--pmt-h4-size)}
h5{font-size:var(--pmt-h5-size)}
h6{font-size:var(--pmt-h6-size)}
p{margin:0 0 1.1em;color:var(--pmt-color-body)}

.site-header{
    position:fixed;
    inset:0 0 auto 0;
    z-index:1000;
    background:var(--pmt-header-bg);
    transition:background .25s ease, box-shadow .25s ease, backdrop-filter .25s ease;
}
.site-header.is-scrolled{
    background:var(--pmt-header-bg-scrolled);
    backdrop-filter:blur(14px);
    box-shadow:0 8px 26px rgba(24,20,18,.08);
}
.header-inner{
    min-height:92px;
    display:grid;
    grid-template-columns:1fr auto auto;
    gap:24px;
    align-items:center;
}
.brand-link{display:inline-flex;align-items:center;min-height:42px}
.retina-logo,.custom-logo{max-height:62px;width:auto}
.brand-name{font-size:32px;color:var(--pmt-header-color)}
.brand-subtitle{display:block;font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--pmt-header-color)}
.site-header.is-scrolled .brand-name,
.site-header.is-scrolled .brand-subtitle{color:var(--pmt-header-color-scrolled)}

.primary-nav .menu,
.primary-nav ul,
.site-footer .menu,
.site-footer ul{
    display:flex;
    gap:24px;
    list-style:none;
    margin:0;
    padding:0;
}
.primary-nav li{position:relative}
.primary-nav a{
    color:var(--pmt-header-color);
    font-size:12px;
    letter-spacing:var(--pmt-header-spacing);
    text-transform:var(--pmt-header-transform);
    transition:color .2s ease;
}
.site-header.is-scrolled .primary-nav a{color:var(--pmt-header-color-scrolled)}
.primary-nav a:hover{color:var(--pmt-header-hover)}

.primary-nav .sub-menu{
    position:absolute;
    top:100%;
    left:0;
    min-width:220px;
    padding:16px;
    background:#fff;
    border:1px solid var(--pmt-line);
    box-shadow:var(--pmt-shadow);
    display:none;
    flex-direction:column;
    gap:10px;
}
.primary-nav li:hover > .sub-menu{display:flex}
.primary-nav .sub-menu a{color:#1f1a17;letter-spacing:.1em;text-transform:none}

.header-actions{display:flex;align-items:center;gap:14px}
.btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    padding:0 22px;
    border-radius:999px;
    border:1px solid currentColor;
    font-size:12px;
    letter-spacing:.18em;
    text-transform:uppercase;
    transition:.22s ease;
}
.btn-outline{color:var(--pmt-header-color)}
.site-header.is-scrolled .btn-outline{color:var(--pmt-header-color-scrolled)}
.btn-outline:hover,.btn-primary:hover{transform:translateY(-1px)}
.btn-primary{
    background:#9b6b3a;
    color:#fff;
    border-color:#9b6b3a;
}
.menu-toggle{
    display:none;
    width:46px;height:46px;
    border-radius:999px;
    border:1px solid rgba(255,255,255,.3);
    background:transparent;
    cursor:pointer;
}
.site-header.is-scrolled .menu-toggle{border-color:var(--pmt-line)}
.menu-toggle span{
    display:block;
    width:18px;height:1px;
    background:currentColor;
    margin:4px auto;
}

.mobile-drawer{
    position:fixed;
    inset:0 0 0 auto;
    width:min(92vw,420px);
    transform:translateX(100%);
    transition:transform .28s ease;
    background:#fff;
    box-shadow:-18px 0 48px rgba(24,20,18,.12);
}
.mobile-drawer.is-open{transform:translateX(0)}
.mobile-drawer__inner{padding:32px;display:flex;flex-direction:column;gap:24px}
.mobile-close{align-self:flex-end;border:none;background:none;font-size:34px;cursor:pointer}
.mobile-drawer .menu,.mobile-drawer ul{display:flex;flex-direction:column;gap:14px;list-style:none;margin:10px 0 0;padding:0}
.mobile-booking{margin-top:10px}

.page-section{padding:150px 0 90px}
.standard-page .entry-content,
.homepage-content{max-width:1200px;margin:0 auto}

.homepage-content > .vc_row,
.homepage-content > .wpb_row,
.homepage-content > section{
    margin-bottom:0;
}

.eyebrow{
    display:inline-block;
    margin-bottom:14px;
    font-size:11px;
    letter-spacing:.24em;
    text-transform:uppercase;
    color:#9b6b3a;
}
.section-heading{margin-bottom:28px}

.card-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0,1fr));
    gap:22px;
}
.card{
    background:var(--pmt-white);
    border:1px solid var(--pmt-line);
    border-radius:var(--pmt-radius);
    overflow:hidden;
    box-shadow:var(--pmt-shadow);
}
.card-placeholder{
    aspect-ratio:1.15/1;
    background:linear-gradient(135deg, #d7c2a3 0%, #f6ede1 55%, #8f6440 100%);
}
.card-body{padding:24px}
.card-title{font-size:32px}
.featured-image{margin:0 0 26px}
.featured-image img{border-radius:22px}

.site-footer{
    background:var(--pmt-footer-bg);
    color:var(--pmt-footer-text);
    font-size:var(--pmt-footer-size);
    padding:68px 0 22px;
}
.site-footer .footer-title{
    color:var(--pmt-footer-heading);
    font-size:12px;
    letter-spacing:.22em;
    text-transform:uppercase;
    margin-bottom:16px;
}
.site-footer .footer-brand{
    color:var(--pmt-footer-heading);
    font-size:42px;
}
.site-footer,
.site-footer p,
.site-footer li{color:var(--pmt-footer-text)}
.site-footer a{color:var(--pmt-footer-link)}
.footer-grid{
    display:grid;
    grid-template-columns:1.2fr .8fr .9fr;
    gap:30px;
}
.footer-bottom{
    margin-top:26px;
    padding-top:18px;
    border-top:1px solid rgba(255,255,255,.1);
}

@media (max-width: 980px){
    .desktop-nav{display:none}
    .menu-toggle{display:inline-block;color:var(--pmt-header-color)}
    .site-header.is-scrolled .menu-toggle{color:var(--pmt-header-color-scrolled)}
    .header-inner{grid-template-columns:1fr auto}
    .header-actions .btn{display:none}
    .footer-grid,.card-grid{grid-template-columns:1fr}
}

@media (max-width: 640px){
    .container{width:min(calc(100% - 28px), var(--pmt-container))}
    .page-section{padding:124px 0 70px}
    .header-inner{min-height:78px}
    .brand-name{font-size:28px}
    .retina-logo,.custom-logo{max-height:52px}
}


/* =========================================================
   PMT Marquis faithful homepage layer
   Inspired by the original HTML/CSS/JS shared by the user
   Intended for Gutenberg blocks using the classes below
   ========================================================= */

:root{
  --pmt-noir:#181412;
  --pmt-noir2:#1c1610;
  --pmt-blanc:#fffdf8;
  --pmt-ivoire:#f4ecdf;
  --pmt-pierre:#d6c3ab;
  --pmt-sable:#c8b898;
  --pmt-sienna:#8e6035;
  --pmt-or2:#d7ab65;
  --pmt-or3:#b98a46;
  --pmt-line-soft:rgba(200,184,152,.16);
}

.pmt-homepage{background:var(--pmt-ivoire); color:var(--pmt-noir); overflow:hidden}
.pmt-homepage p{font-weight:300; line-height:1.85}
.pmt-homepage h1,.pmt-homepage h2,.pmt-homepage h3{
  font-family:"Cormorant Garamond",serif;
  font-weight:300;
  letter-spacing:-.025em;
  line-height:.96;
}
.pmt-homepage em{font-style:italic;color:var(--pmt-or2)}

.pmt-hero{position:relative;overflow:hidden;display:flex;align-items:flex-end}
.pmt-hero .wp-block-cover__inner-container{width:100%}
.pmt-hero::after{
  content:"";
  position:absolute; inset:0;
  background:linear-gradient(0deg, rgba(28,22,16,.88) 0%, rgba(28,22,16,.45) 35%, rgba(28,22,16,.1) 70%, transparent 100%);
  z-index:1; pointer-events:none;
}
.pmt-hero-bg{
  position:absolute!important; inset:-6%!important;
  will-change:transform;
  animation:pmt-kb 20s ease-out forwards;
  filter:brightness(.78) saturate(.92);
}
@keyframes pmt-kb{from{transform:scale(1.08) translateX(8px)}to{transform:scale(1) translateX(0)}}

.pmt-hero-inner{
  position:relative; z-index:2;
  max-width:960px; padding:0 64px 88px;
}
.pmt-htag{
  display:inline-flex; align-items:center; gap:14px;
  font-size:8.5px; letter-spacing:.5em; text-transform:uppercase;
  color:var(--pmt-or2); margin:0 0 24px;
}
.pmt-htag::before{content:"";display:block;width:32px;height:1px;background:var(--pmt-or2)}
.pmt-h1{
  font-size:clamp(58px,9vw,128px)!important;
  color:var(--pmt-blanc)!important;
  margin:0 0 30px!important;
}
.pmt-h1 .pmt-ln{display:block;overflow:hidden}
.pmt-h1 .pmt-lni{display:block;opacity:0;transform:translateY(108%);animation:pmt-lr .95s cubic-bezier(.77,0,.18,1) forwards}
.pmt-h1 .pmt-ln:nth-child(1) .pmt-lni{animation-delay:.55s}
.pmt-h1 .pmt-ln:nth-child(2) .pmt-lni{animation-delay:.7s}
.pmt-h1 .pmt-ln:nth-child(3) .pmt-lni{animation-delay:.85s}
@keyframes pmt-lr{to{opacity:1;transform:translateY(0)}}

.pmt-hsep{display:flex;align-items:center;gap:18px;margin:0 0 22px;color:rgba(255,255,255,.76);font-size:8.5px;letter-spacing:.45em;text-transform:uppercase}
.pmt-hsep::before,.pmt-hsep::after{content:"";height:1px;background:rgba(215,171,101,.42);flex:1}
.pmt-hsep span{white-space:nowrap}
.pmt-hdesc{max-width:640px;margin:0;color:rgba(255,255,255,.86)!important;font-size:14px;letter-spacing:.02em}
.pmt-hacts{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
.pmt-btn-p .wp-element-button{
  background:var(--pmt-or2)!important;color:var(--pmt-noir)!important;
  border:none!important;border-radius:0!important;padding:18px 28px!important;
  font-size:10px!important;letter-spacing:.42em;text-transform:uppercase;
  transition:background .3s ease, transform .3s ease;
}
.pmt-btn-p .wp-element-button:hover{background:var(--pmt-or3)!important;transform:translateY(-1px)}
.pmt-btn-g .wp-element-button,.pmt-link-btn .wp-element-button{
  background:transparent!important;color:var(--pmt-blanc)!important;
  border:1px solid rgba(255,255,255,.28)!important;border-radius:0!important;
  padding:18px 28px!important;font-size:10px!important;letter-spacing:.38em;text-transform:uppercase;
}
.pmt-link-btn .wp-element-button{color:var(--pmt-noir)!important;border-color:rgba(142,96,53,.22)!important}
.pmt-hscroll{
  position:absolute; right:64px; bottom:34px; z-index:2;
  display:flex; align-items:center; gap:14px; color:rgba(255,255,255,.66);
  font-size:8px; letter-spacing:.42em; text-transform:uppercase; margin:0!important;
}
.pmt-hsl{display:block;width:1px;height:54px;background:rgba(255,255,255,.22);position:relative;overflow:hidden}
.pmt-hsl::after{content:"";position:absolute;left:0;top:0;width:100%;height:24px;background:var(--pmt-or2);animation:pmt-scroll 1.6s ease-in-out infinite}
@keyframes pmt-scroll{0%{transform:translateY(-130%)}100%{transform:translateY(250%)}}

.pmt-ticker-wrap{
  background:var(--pmt-noir); color:var(--pmt-sable);
  overflow:hidden; border-top:1px solid rgba(255,255,255,.06); border-bottom:1px solid rgba(255,255,255,.06);
}
.pmt-ticker-t{
  display:flex; gap:42px; white-space:nowrap; margin:0; padding:18px 0;
  font-size:9px; letter-spacing:.48em; text-transform:uppercase;
  animation:pmt-ticker 28s linear infinite;
}
.pmt-ticker-i{position:relative}
.pmt-ticker-i::after{content:"";display:inline-block;width:1px;height:10px;background:rgba(215,171,101,.22);margin-left:42px;vertical-align:middle}
@keyframes pmt-ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}

.pmt-nimes,.pmt-rooms,.pmt-xp{padding:110px 24px}
.pmt-sec-k,.pmt-k,.pmt-mon-k,.pmt-rmk,.pmt-xn{
  font-size:8.5px; letter-spacing:.45em; text-transform:uppercase; color:var(--pmt-or2); margin-bottom:22px!important;
}
.pmt-sec-n{font-size:clamp(38px,6vw,82px)!important;margin:0!important}
.pmt-sec-t{font-size:15px;max-width:680px}
.pmt-mon-grid,.pmt-rg,.pmt-xg{gap:24px!important}
.pmt-mon-img img{
  width:100%; aspect-ratio:.78; object-fit:cover; display:block;
  filter:brightness(.94) saturate(.9);
}
.pmt-mon-card,.pmt-xi{
  background:rgba(255,253,248,.72); backdrop-filter:blur(8px);
  border:1px solid var(--pmt-line-soft); padding:28px; min-height:230px;
}
.pmt-mon-h,.pmt-rmh{font-size:36px!important;margin:0 0 12px!important}
.pmt-mon-card p,.pmt-xi p,.pmt-rmt{font-size:13.5px;color:rgba(24,20,18,.72)}

.pmt-about,.pmt-patio,.pmt-pdj{background:#fff}
.pmt-av,.pmt-pdj-media,.pmt-patio-gallery{min-height:52vw}
.pmt-av img,.pmt-pdj-media img,.pmt-pg img,.pmt-pg2 img,.pmt-room-feature img{
  width:100%; height:100%; object-fit:cover; display:block;
}
.pmt-at,.pmt-patio-text,.pmt-pdj-text,.pmt-rfd{
  padding:88px 72px!important; display:flex; flex-direction:column; justify-content:center;
}
.pmt-rfd{background:#fff}
.pmt-at h2,.pmt-patio-text h2,.pmt-pdj-text h2{font-size:clamp(44px,6vw,86px)!important;margin:0 0 24px!important}
.pmt-at p,.pmt-patio-text p,.pmt-pdj-text p,.pmt-rfd p{max-width:640px}
.pmt-at ul{margin:22px 0 0;padding-left:18px}
.pmt-at li{margin:8px 0;color:rgba(24,20,18,.72)}

.pmt-room-cover{
  border-radius:0!important; overflow:hidden; min-height:600px!important;
}
.pmt-room-cover .wp-block-cover__background{
  background:linear-gradient(0deg, rgba(24,20,18,.84) 0%, rgba(24,20,18,.22) 60%, transparent 100%);
}
.pmt-room-cover .wp-block-cover__inner-container{
  padding:34px;display:flex;flex-direction:column;justify-content:flex-end;min-height:100%;
}
.pmt-rmh,.pmt-rmt,.pmt-rmk{color:#fff!important}
.pmt-room-feature{
  margin-top:28px!important; background:#fff; border:1px solid var(--pmt-line-soft);
}
.pmt-room-feature .wp-block-column:first-child img{min-height:100%;object-fit:cover}
.pmt-rfd h3{font-size:52px!important;margin:0 0 18px!important}

.pmt-patio-gallery{padding-right:0!important}
.pmt-pg img{aspect-ratio:1.5;object-fit:cover}
.pmt-pg2{gap:0!important}
.pmt-pg2 .wp-block-column img{aspect-ratio:1/1;object-fit:cover}
.pmt-patio-text blockquote{
  margin:28px 0 0; padding-left:22px; border-left:2px solid rgba(155,107,58,.28);
  font-family:"Cormorant Garamond",serif; font-size:30px; font-style:italic; color:#805f3f;
}

.pmt-xp{padding-bottom:84px}
.pmt-xi{min-height:220px}
.pmt-gallery-band{overflow:hidden;margin-top:34px}
.pmt-gstrip{display:flex;gap:14px;animation:pmt-gallery 34s linear infinite}
.pmt-gimg{flex:0 0 34%}
.pmt-gimg img{width:100%;aspect-ratio:1.42;object-fit:cover;display:block}
@keyframes pmt-gallery{from{transform:translateX(0)}to{transform:translateX(-24%)}}

.pmt-booking{
  background:linear-gradient(135deg,#181412 0%,#2a211c 50%,#5a402c 100%);
  color:#fff; padding:92px 24px;
}
.pmt-bk-inner{max-width:1280px;margin:0 auto!important;align-items:center!important}
.pmt-bk-left h2{font-size:clamp(44px,6vw,84px)!important;color:#fff!important}
.pmt-bk-left p{color:rgba(255,255,255,.72)}
.pmt-bk-card{
  background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.09);
  padding:36px!important;
}
.pmt-bk-phone{font-size:42px!important;color:#fff!important;margin:22px 0 12px!important}
.pmt-bk-address{color:rgba(255,255,255,.72)}

.pmt-rv{opacity:0;transform:translateY(34px);transition:opacity .88s ease,transform .88s ease}
.pmt-rv.in{opacity:1;transform:translateY(0)}
.pmt-d1{transition-delay:.1s}.pmt-d2{transition-delay:.2s}.pmt-d3{transition-delay:.3s}

@media(max-width:960px){
  .pmt-hero-inner{padding:0 22px 64px}
  .pmt-h1{font-size:clamp(44px,13vw,82px)!important}
  .pmt-hscroll{right:22px;bottom:24px}
  .pmt-av,.pmt-patio-gallery,.pmt-pdj-media{min-height:52vh}
  .pmt-rg,.pmt-mon-grid,.pmt-xg,.pmt-nf,.pmt-rh,.pmt-xh,.pmt-bk-inner{display:grid!important;grid-template-columns:1fr!important}
  .pmt-at,.pmt-patio-text,.pmt-pdj-text,.pmt-rfd{padding:60px 28px!important}
  .pmt-gimg{flex-basis:70%}
}


/* =========================================================
   PMT Marquis integrated template layout fixes v0.3.3
   Ensures full-screen hero and side-by-side sections
   ========================================================= */

.pmt-homepage,
.pmt-homepage .wp-block-group,
.pmt-homepage .wp-block-columns,
.pmt-homepage .wp-block-column{box-sizing:border-box}

.pmt-homepage .alignfull{
  width:100vw;
  max-width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
}

.pmt-homepage .wp-block-columns{
  display:flex !important;
  flex-wrap:nowrap;
  align-items:stretch;
  gap:0;
}

.pmt-homepage .wp-block-columns.pmt-mon-grid,
.pmt-homepage .wp-block-columns.pmt-rg,
.pmt-homepage .wp-block-columns.pmt-xg,
.pmt-homepage .wp-block-columns.pmt-nf,
.pmt-homepage .wp-block-columns.pmt-rh,
.pmt-homepage .wp-block-columns.pmt-xh,
.pmt-homepage .wp-block-columns.pmt-bk-inner,
.pmt-homepage .wp-block-columns.pmt-pg2{
  gap:24px !important;
}

.pmt-homepage .wp-block-columns > .wp-block-column{
  flex-grow:1;
  min-width:0;
}

.pmt-hero{
  min-height:100svh !important;
  min-height:100vh !important;
}
.pmt-hero .wp-block-cover__image-background{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
}
.pmt-hero .wp-block-cover__inner-container{
  min-height:100svh;
  min-height:100vh;
  display:flex;
  align-items:flex-end;
}
.pmt-about .wp-block-column,
.pmt-patio .wp-block-column,
.pmt-pdj .wp-block-column{
  min-height:820px;
}
.pmt-av figure,
.pmt-patio-gallery figure,
.pmt-pdj-media figure,
.pmt-room-feature figure{
  height:100%;
  margin:0;
}
.pmt-av img,
.pmt-patio-gallery img,
.pmt-pdj-media img,
.pmt-room-feature img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.pmt-mon-img,
.pmt-mon-img img{
  display:block;
  margin:0;
}

.pmt-pg2 .wp-block-column figure{
  height:100%;
  margin:0;
}
.pmt-pg2 .wp-block-column{display:flex}
.pmt-room-feature > .wp-block-column,
.pmt-about > .wp-block-column,
.pmt-patio > .wp-block-column,
.pmt-pdj > .wp-block-column{
  display:flex;
  flex-direction:column;
}

@media (max-width:960px){
  .pmt-homepage .wp-block-columns{
    display:block !important;
  }
  .pmt-homepage .wp-block-columns > .wp-block-column{
    width:100% !important;
    flex-basis:100% !important;
  }
  .pmt-about .wp-block-column,
  .pmt-patio .wp-block-column,
  .pmt-pdj .wp-block-column{
    min-height:auto;
  }
  .pmt-hero .wp-block-cover__inner-container{
    min-height:100svh;
    min-height:100vh;
  }
}
