

:root{
--color-surface-main:#FAF6F0;
--color-surface-alt:#E6EDF0;
--color-text-main:#3D3E3A;
--color-text-muted:#8A8C84;
--color-accent-primary:#D3A297;
--color-border-soft:#E2DED7;
--color-highlight-floral:#B7C3B0;
--color-cta-foreground:#FAF6F0;

--font-heading:"Cormorant Garamond",serif;
--font-body:"Source Serif Pro",serif;

--text-xxl:2.75rem;
--text-xl:2rem;
--text-lg:1.5rem;
--text-md:1.125rem;
--text-base:1rem;
--text-sm:0.93rem;

--space-xs:0.5rem;
--space-sm:1rem;
--space-md:1.5rem;
--space-lg:2.5rem;
--space-xl:4rem;

--container-max:1080px;
--container-pad:clamp(1.5rem,4vw,2.5rem);

--radius-sm:4px;
--radius-md:12px;
--radius-lg:20px;

--shadow-soft:0 2px 12px rgba(61,62,58,0.05);
}

*,
*::before,
*::after{
box-sizing:border-box;
margin:0;
padding:0;
}

html{
-webkit-text-size-adjust:100%;
text-size-adjust:100%;
}

body{
min-height:100vh;
font-family:var(--font-body);
font-size:var(--text-base);
line-height:1.6;
color:var(--color-text-main);
background:var(--color-surface-main);
text-rendering:optimizeLegibility;
}

img,
picture,
video,
canvas,
svg{
display:block;
max-width:100%;
height:auto;
}

img{
object-fit:cover;
}

a{
color:inherit;
text-decoration:none;
}

a:hover,
a:focus-visible{
text-decoration:underline;
}

button,
input,
select,
textarea{
font:inherit;
color:inherit;
background:none;
border:none;
outline:none;
}

button{
cursor:pointer;
}

textarea{
resize:vertical;
}

ul,
ol{
list-style-position:inside;
}

h1,h2,h3,h4,h5,h6{
font-family:var(--font-heading);
line-height:1.2;
font-weight:500;
}

h1{font-size:var(--text-xxl);}
h2{font-size:var(--text-xl);}
h3{font-size:var(--text-lg);}
h4{font-size:var(--text-md);}
h5{font-size:var(--text-base);}
h6{font-size:var(--text-sm);}

h1,h2,h3,h4,h5,h6,
p,
ul,
ol,
blockquote{
margin-block-end:var(--space-md);
}

small{
font-size:var(--text-sm);
color:var(--color-text-muted);
}

.container{
width:100%;
max-width:var(--container-max);
margin-inline:auto;
padding-inline:var(--container-pad);
}

.section{
padding-block:var(--space-xl);
}

.section.alt{
background:var(--color-surface-alt);
}

.stack > * + *{
margin-top:var(--space-md);
}

.stack-lg > * + *{
margin-top:var(--space-lg);
}

.cluster{
display:flex;
flex-wrap:wrap;
gap:var(--space-sm);
align-items:center;
}

.grid{
display:grid;
gap:var(--space-lg);
grid-template-columns:repeat(1,minmax(0,1fr));
}

@media (min-width:700px){
.grid.cols-2{
grid-template-columns:repeat(2,minmax(0,1fr));
}
}

@media (min-width:900px){
.grid.cols-3{
grid-template-columns:repeat(3,minmax(0,1fr));
}
}

.card{
background:var(--color-surface-main);
border:1px solid var(--color-border-soft);
border-radius:var(--radius-md);
padding:var(--space-md);
box-shadow:var(--shadow-soft);
}

.frame{
border:1px solid var(--color-border-soft);
border-radius:var(--radius-md);
overflow:hidden;
background:var(--color-surface-main);
}

.frame-lg{
border-radius:var(--radius-lg);
}

.media-3-2{
aspect-ratio:3/2;
width:100%;
overflow:hidden;
}

.media-4-3{
aspect-ratio:4/3;
width:100%;
overflow:hidden;
}

.media-3-2 img,
.media-4-3 img{
width:100%;
height:100%;
object-fit:cover;
}

.button{
display:inline-flex;
align-items:center;
justify-content:center;
padding:0.65rem 1.2rem;
border-radius:var(--radius-sm);
background:var(--color-accent-primary);
color:var(--color-cta-foreground);
font-size:var(--text-sm);
transition:transform 0.15s ease, background 0.2s ease;
}

.button:hover{
filter:brightness(0.95);
}

.button:active{
transform:scale(1.03);
}

.button:focus-visible{
outline:2px solid var(--color-highlight-floral);
outline-offset:2px;
}

.input,
.select,
.textarea{
width:100%;
padding:0.65rem 0.75rem;
border-radius:var(--radius-sm);
border:1px solid var(--color-border-soft);
background:var(--color-surface-main);
}

.input:focus,
.select:focus,
.textarea:focus{
border-color:var(--color-accent-primary);
}

.label{
display:block;
margin-bottom:var(--space-xs);
font-size:var(--text-sm);
color:var(--color-text-muted);
}

.hero{
text-align:center;
padding-block:var(--space-xl);
}

.hero .label{
font-style:italic;
letter-spacing:0.02em;
}

.hero .actions{
margin-top:var(--space-md);
display:flex;
justify-content:center;
flex-wrap:wrap;
gap:var(--space-sm);
}

.content > :last-child,
.card > :last-child,
.stack > :last-child{
margin-bottom:0;
}


.rrg-header{position:sticky;top:0;background:var(--color-surface-main);border-bottom:1px solid var(--color-border-soft);z-index:1000}
.rrg-header__inner{display:flex;align-items:center;justify-content:space-between;min-height:72px;gap:var(--space-sm)}

.rrg-brand{display:flex;align-items:center;gap:0.6rem;text-decoration:none}
.rrg-brand__mark{height:48px;width:auto}
.rrg-brand__text{font-family:var(--font-heading);font-size:1.25rem}

.rrg-nav{display:flex}
.rrg-nav__list{display:flex;gap:1.2rem;align-items:center}
.rrg-nav a{font-size:var(--text-sm)}

.rrg-nav-toggle{display:none;flex-direction:column;justify-content:center;gap:4px;padding:0.5rem;border-radius:var(--radius-sm)}
.rrg-nav-toggle__line{width:22px;height:2px;background:var(--color-text-main)}

.rrg-nav-toggle:focus-visible{outline:2px solid var(--color-highlight-floral)}

@media (max-width:900px){
.rrg-nav-toggle{display:flex}
.rrg-nav{position:fixed;top:72px;right:0;width:85%;max-width:320px;height:calc(100vh - 72px);background:var(--color-surface-main);border-left:1px solid var(--color-border-soft);transform:translateX(100%);transition:transform .25s ease;padding:var(--space-lg);overflow-y:auto}
.rrg-nav[data-open="true"]{transform:translateX(0)}
.rrg-nav__list{flex-direction:column;align-items:flex-start;gap:var(--space-md)}
}

@media (max-width:600px){
.rrg-brand__mark{height:36px}
.rrg-brand__text{font-size:1.05rem}
}


.rrg-footer{border-top:1px solid var(--color-border-soft);background:var(--color-surface-main);margin-top:var(--space-xl)}
.rrg-footer__inner{display:grid;gap:var(--space-lg);padding-block:var(--space-xl)}
@media(min-width:700px){.rrg-footer__inner{grid-template-columns:1.2fr 1fr}}

.rrg-footer__logo img{height:40px;width:auto}
.rrg-footer__logo span{font-family:var(--font-heading);font-size:1.2rem}

.rrg-footer__nav a{display:block;font-size:var(--text-sm)}

.rrg-footer__bottom{border-top:1px solid var(--color-border-soft);padding-block:var(--space-sm);text-align:center}

.rrg-consent{position:fixed;bottom:0;left:0;width:100%;background:var(--color-surface-alt);border-top:1px solid var(--color-border-soft);padding:var(--space-sm);display:none}
.rrg-consent[data-visible="true"]{display:block}
.rrg-consent__panel{max-width:800px;margin-inline:auto;display:flex;flex-direction:column;gap:var(--space-sm);text-align:center}
.rrg-consent__reject{background:transparent;border:1px solid var(--color-border-soft);color:var(--color-text-main)}

.rrg-age{position:fixed;inset:0;display:none}
.rrg-age[data-visible="true"]{display:block}
.rrg-age__overlay{position:absolute;inset:0;background:rgba(0,0,0,0.4)}
.rrg-age__modal{position:relative;max-width:420px;margin:10vh auto;background:var(--color-surface-main);padding:var(--space-lg);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);text-align:center}
.rrg-age__decline{background:transparent;border:1px solid var(--color-border-soft);color:var(--color-text-main)}


.cookie-policy-page{
}

.cookie-hero-inner{
max-width:720px;
margin-inline:auto;
display:flex;
flex-direction:column;
gap:var(--space-md);
}

.cookie-hero-text{
display:flex;
flex-direction:column;
gap:var(--space-md);
text-align:left;
}

.cookie-section{
border-top:1px solid var(--color-border-soft);
}

.cookie-narrow{
max-width:720px;
margin-inline:auto;
}

.cookie-medium{
max-width:760px;
margin-inline:auto;
}

.cookie-stack{
display:flex;
flex-direction:column;
gap:var(--space-md);
}

.cookie-blocks{
display:flex;
flex-direction:column;
gap:var(--space-lg);
}

.cookie-block{
border:1px solid var(--color-border-soft);
border-radius:var(--radius-md);
padding:var(--space-md);
background:var(--color-surface-main);
display:flex;
flex-direction:column;
gap:var(--space-sm);
}

@media (max-width:700px){
.cookie-hero-inner,
.cookie-narrow,
.cookie-medium{
padding-inline:0;
}
}


.privacy-page .intro-container{
max-width:720px;
margin-inline:auto;
text-align:left;
display:flex;
flex-direction:column;
gap:var(--space-md);
}

.privacy-page .text-block{
display:flex;
flex-direction:column;
gap:var(--space-md);
}

.privacy-page .section-container{
max-width:760px;
margin-inline:auto;
display:flex;
flex-direction:column;
gap:var(--space-lg);
}

.privacy-page .content-group{
display:flex;
flex-direction:column;
gap:var(--space-lg);
}

.privacy-page .use-container{
max-width:820px;
margin-inline:auto;
display:flex;
flex-direction:column;
gap:var(--space-lg);
}

.privacy-page .narrow-container{
max-width:720px;
margin-inline:auto;
display:flex;
flex-direction:column;
gap:var(--space-lg);
}

.privacy-page .unit{
display:flex;
flex-direction:column;
gap:var(--space-sm);
padding-bottom:var(--space-md);
border-bottom:1px solid var(--color-border-soft);
}

.privacy-page .unit:last-child{
border-bottom:none;
padding-bottom:0;
}

@media (max-width:700px){
.privacy-page .intro-container,
.privacy-page .section-container,
.privacy-page .use-container,
.privacy-page .narrow-container{
padding-inline:var(--container-pad);
}
}


.contact-page .contact-hero-inner{
max-width:640px;
margin-inline:auto;
text-align:center;
display:flex;
flex-direction:column;
gap:var(--space-md);
}

.contact-form-section .form-container{
max-width:720px;
margin-inline:auto;
display:flex;
flex-direction:column;
gap:var(--space-md);
}

.form-intro{
max-width:60ch;
}

.enquiry-form{
display:flex;
flex-direction:column;
gap:var(--space-md);
}

.field{
display:flex;
flex-direction:column;
gap:var(--space-xs);
}

.submit-btn{
align-self:flex-start;
}

.form-feedback{
font-size:var(--text-sm);
color:var(--color-text-muted);
}

.contact-ways .ways-inner{
max-width:700px;
margin-inline:auto;
display:flex;
flex-direction:column;
gap:var(--space-md);
}

.contact-planning .planning-grid{
display:grid;
gap:var(--space-lg);
grid-template-columns:repeat(1,minmax(0,1fr));
}

.contact-planning .planning-card{
min-width:0;
}

@media(min-width:700px){
.contact-planning .planning-grid{
grid-template-columns:repeat(2,minmax(0,1fr));
}
}

.contact-next .next-inner{
max-width:700px;
margin-inline:auto;
display:flex;
flex-direction:column;
gap:var(--space-md);
}

.contact-atmosphere .atmosphere-inner{
max-width:620px;
margin-inline:auto;
text-align:center;
display:flex;
flex-direction:column;
gap:var(--space-md);
}

.contact-cta .cta-inner{
max-width:520px;
margin-inline:auto;
text-align:center;
display:flex;
flex-direction:column;
gap:var(--space-md);
align-items:center;
}

.cta-button{
}

@media(max-width:600px){
.submit-btn{
width:100%;
}
.cta-button{
width:100%;
}
}


.tc-page{}

.tc-container{
width:100%;
margin-inline:auto;
padding-inline:var(--container-pad);
}

.tc-narrow{
max-width:720px;
}

.tc-medium{
max-width:760px;
}

.tc-intro h1{
margin-bottom:var(--space-md);
}

.tc-use .tc-block,
.tc-bookings .tc-block,
.tc-liability .tc-block,
.tc-privacy .tc-block,
.tc-updates .tc-block{
padding-bottom:var(--space-md);
border-bottom:1px solid var(--color-border-soft);
margin-bottom:var(--space-md);
}

.tc-use .tc-block:last-child,
.tc-bookings .tc-block:last-child,
.tc-liability .tc-block:last-child,
.tc-privacy .tc-block:last-child,
.tc-updates .tc-block:last-child{
border-bottom:none;
margin-bottom:0;
padding-bottom:0;
}

.tc-poker .tc-highlight{
border:1px solid var(--color-border-soft);
border-radius:var(--radius-lg);
padding:var(--space-lg);
background:var(--color-surface-main);
box-shadow:var(--shadow-soft);
}

.tc-poker .tc-block{
margin-bottom:var(--space-md);
}

.tc-poker .tc-block:last-child{
margin-bottom:0;
}

@media (max-width:700px){
.tc-poker .tc-highlight{
padding:var(--space-md);
}
}


.home-page .home-hero__inner{max-width:52ch;margin-inline:auto;text-align:center;display:flex;flex-direction:column;gap:var(--space-md);} 

.home-image__frame{margin-bottom:var(--space-sm);} 
.home-image__caption{max-width:85ch;margin-inline:auto;text-align:center;color:var(--color-text-muted);} 

.home-approach__grid{align-items:start;} 
.home-approach__col{max-width:60ch;margin-inline:auto;text-align:center;} 

.home-experiences__grid{grid-template-columns:repeat(1,minmax(0,1fr));} 
@media(min-width:700px){.home-experiences__grid{grid-template-columns:repeat(2,minmax(0,1fr));}} 
.home-experiences__card{display:flex;flex-direction:column;gap:var(--space-sm);} 
.home-experiences__card:hover{transform:translateY(-2px);} 

.home-poker__grid{display:grid;gap:var(--space-lg);align-items:center;} 
@media(min-width:900px){.home-poker__grid{grid-template-columns:1fr 1fr;}} 
.home-poker__text{max-width:60ch;} 

.home-gallery__intro{max-width:60ch;margin-inline:auto;text-align:center;} 
.home-gallery__grid{display:grid;gap:var(--space-md);grid-template-columns:1fr;} 
@media(min-width:700px){.home-gallery__grid{grid-template-columns:repeat(3,minmax(0,1fr));}} 

.home-notes__grid{display:grid;gap:var(--space-lg);grid-template-columns:1fr;} 
@media(min-width:700px){.home-notes__grid{grid-template-columns:repeat(2,minmax(0,1fr));}} 
.home-notes__quote{max-width:45ch;margin-inline:auto;text-align:center;font-style:italic;} 

.home-visit__inner{max-width:60ch;margin-inline:auto;text-align:center;display:flex;flex-direction:column;gap:var(--space-md);} 

.home-closing__inner{max-width:50ch;margin-inline:auto;text-align:center;}


.gnbd-page{}

.gnbd-hero-inner{display:flex;flex-direction:column;gap:var(--space-lg);align-items:center;text-align:center}
.gnbd-hero-text{max-width:65ch;margin-inline:auto}
.gnbd-quote{max-width:65ch;margin-inline:auto;padding:var(--space-md)}

.gnbd-testimonials .card{transition:transform .2s ease,border-color .2s ease}
.gnbd-testimonials .card:hover{transform:translateY(-4px);border-color:var(--color-accent-primary)}

.gnbd-moments{align-items:start}
.gnbd-moments > div{min-width:0}
.gnbd-moments p{max-width:60ch}

.gnbd-booking{display:grid;grid-template-columns:3fr 2fr;gap:var(--space-lg)}
.gnbd-steps p{max-width:60ch}
.gnbd-details p{max-width:55ch}

.gnbd-arrival{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-lg);align-items:center}
.gnbd-arrival-text{display:grid;gap:var(--space-md)}
.gnbd-arrival-text p{max-width:55ch}

.gnbd-etiquette{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-lg)}
.gnbd-etiquette p{max-width:60ch}

.gnbd-form-wrap{display:flex;flex-direction:column;align-items:center;gap:var(--space-md)}
.gnbd-form{width:100%;max-width:640px;display:grid;gap:var(--space-md)}
.gnbd-form-note{max-width:50ch;text-align:left}

.gnbd-closing{display:flex;flex-direction:column;align-items:center}
.gnbd-closing-quote{max-width:50ch;margin-inline:auto;text-align:center;margin-top:var(--space-md)}

@media (max-width:900px){
.gnbd-booking{grid-template-columns:1fr}
.gnbd-arrival{grid-template-columns:1fr}
.gnbd-etiquette{grid-template-columns:1fr}
}


.menu-atmosphere .menu-hero-inner{max-width:640px;margin-inline:auto;display:flex;flex-direction:column;gap:var(--space-md);text-align:center}

.menu-atmosphere .menu-split{align-items:center}
.menu-atmosphere .menu-split > *{min-width:0}
.menu-atmosphere .menu-split.reverse{direction:rtl}
.menu-atmosphere .menu-split.reverse > *{direction:ltr}

.menu-atmosphere .menu-text{max-width:520px}

.menu-atmosphere .menu-centered{display:flex;justify-content:center}
.menu-atmosphere .menu-narrow{max-width:680px}
.menu-atmosphere .menu-narrow{margin-inline:auto}

.menu-atmosphere .menu-card{display:flex;flex-direction:column;gap:var(--space-sm);text-align:center}
.menu-atmosphere .menu-card:hover{transform:translateY(-2px);border-color:var(--color-highlight-floral)}

.menu-atmosphere .menu-cta{max-width:520px;margin-inline:auto;display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-md)}

@media (max-width:700px){
.menu-atmosphere .menu-split{grid-template-columns:1fr}
.menu-atmosphere .menu-split.reverse{direction:ltr}
.menu-atmosphere .menu-text{max-width:100%}
.menu-atmosphere .menu-hero-inner{padding-inline:var(--space-sm)}
}


.pnf-main{display:block}

.pnf-hero-inner{display:grid;grid-template-columns:1fr;gap:var(--space-lg);align-items:center}
.pnf-hero-text{max-width:520px}
.pnf-hero-image{width:100%}

@media(min-width:900px){
.pnf-hero-inner{grid-template-columns:45% 55%}
}

.pnf-narrow{max-width:720px;margin-inline:auto}
.pnf-callout{padding:var(--space-sm);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);background:var(--color-surface-main)}

.pnf-center{text-align:center}

.pnf-steps{grid-template-columns:1fr}
.pnf-step{display:flex;flex-direction:column;gap:var(--space-sm)}
.pnf-step:hover{transform:translateY(-2px)}

@media(min-width:900px){
.pnf-steps{grid-template-columns:repeat(4,1fr)}
}

.pnf-columns{display:grid;grid-template-columns:1fr;gap:var(--space-lg)}
@media(min-width:700px){
.pnf-columns{grid-template-columns:1fr 1fr}
}

.pnf-atmo-inner{display:grid;grid-template-columns:1fr;gap:var(--space-lg);align-items:center}
.pnf-atmo-text{max-width:560px}

@media(min-width:900px){
.pnf-atmo-inner{grid-template-columns:50% 50%}
}

.pnf-cta-box{max-width:640px;margin-inline:auto;text-align:center;display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-lg);background:var(--color-surface-alt);border-radius:var(--radius-lg);border:1px solid var(--color-border-soft)}

img{transition:transform .4s ease}
.frame:hover img{transform:scale(1.03)}


.gm-page{}

.gm-hero-inner{display:flex;justify-content:center}
.gm-hero-text{max-width:620px;text-align:center;margin-inline:auto;display:flex;flex-direction:column;gap:var(--space-md)}

.gm-gallery-intro{max-width:520px;margin-inline:auto;text-align:center}

.gm-gallery-strip .frame{overflow:hidden}
.gm-gallery-strip img{transition:transform .3s ease}
.gm-gallery-strip .frame:hover img{transform:scale(1.03)}

.gm-split{align-items:center}
.gm-split > *{min-width:0}
.gm-text{max-width:520px}

.gm-quotes{align-items:stretch}
.gm-quotes .card{display:flex;align-items:center;text-align:center}

.gm-gallery-more .frame img{transition:transform .3s ease}
.gm-gallery-more .frame:hover img{transform:scale(1.03)}

.gm-cta{max-width:520px;margin-inline:auto;text-align:center;display:flex;flex-direction:column;gap:var(--space-md)}

@media (max-width:699px){
.gm-split{grid-template-columns:1fr}
.gm-text{max-width:100%}
}


.corporate-hosting .ch-hero-inner{display:flex;flex-direction:column;gap:var(--space-lg);align-items:center}
.corporate-hosting .ch-hero-text{max-width:640px;text-align:center;display:flex;flex-direction:column;gap:var(--space-md);margin-inline:auto}
.corporate-hosting .ch-hero-image{width:100%}

.corporate-hosting .ch-philosophy-inner{max-width:720px;margin-inline:auto}

.corporate-hosting .ch-types-grid{grid-template-columns:repeat(1,minmax(0,1fr))}
@media(min-width:900px){.corporate-hosting .ch-types-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.corporate-hosting .ch-card{height:100%;display:flex;flex-direction:column;gap:var(--space-sm)}
.corporate-hosting .ch-card:hover{transform:translateY(-2px)}

.corporate-hosting .ch-hosted-grid{display:grid;gap:var(--space-lg)}
@media(min-width:900px){.corporate-hosting .ch-hosted-grid{grid-template-columns:3fr 2fr;align-items:center}}
.corporate-hosting .ch-hosted-text{display:flex;flex-direction:column;gap:var(--space-md)}

.corporate-hosting .ch-flow-grid{display:grid;gap:var(--space-lg)}
@media(min-width:900px){.corporate-hosting .ch-flow-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.corporate-hosting .ch-step{display:flex;flex-direction:column;gap:var(--space-sm)}

.corporate-hosting .ch-atmosphere-wrap{position:relative;overflow:hidden}
.corporate-hosting .ch-atmosphere-text{max-width:520px;position:relative;padding:var(--space-lg)}

.corporate-hosting .ch-flex-grid > div{display:flex;flex-direction:column;gap:var(--space-sm)}

.corporate-hosting .ch-notes-grid > div{display:flex;flex-direction:column;gap:var(--space-sm)}

.corporate-hosting .ch-cta-inner{max-width:520px;margin-inline:auto;text-align:center;display:flex;flex-direction:column;gap:var(--space-md)}

.corporate-hosting .ch-closing-text{max-width:600px;margin-inline:auto;text-align:center}

@media(max-width:699px){
.corporate-hosting .ch-hosted-grid{grid-template-columns:1fr}
}


.event-page{display:block}

.event-hero-grid{display:grid;grid-template-columns:1fr;gap:var(--space-lg);align-items:center}
.event-hero-text{max-width:60ch}
.event-hero-media{width:100%}

@media(min-width:900px){
.event-hero-grid{grid-template-columns:0.9fr 1.1fr}
}

.event-type-grid .event-card{display:flex;flex-direction:column;gap:var(--space-sm);text-align:center}

.event-atmosphere-grid{display:grid;grid-template-columns:1fr;gap:var(--space-lg);align-items:center}
.event-atmosphere-text{max-width:65ch}

@media(min-width:900px){
.event-atmosphere-grid{grid-template-columns:1fr 1fr}
}

.event-feature-grid .event-feature{display:flex;flex-direction:column;gap:var(--space-sm);max-width:60ch}

.event-steps{display:grid;grid-template-columns:1fr;gap:var(--space-lg);text-align:center}
.event-step{max-width:50ch;margin-inline:auto;display:flex;flex-direction:column;gap:var(--space-sm)}

@media(min-width:900px){
.event-steps{grid-template-columns:repeat(3,1fr)}
.event-step{margin-inline:0}
}

.event-spaces-grid{display:grid;grid-template-columns:1fr;gap:var(--space-lg)}
.event-spaces-grid > div{max-width:65ch}

@media(min-width:900px){
.event-spaces-grid{grid-template-columns:1fr 1fr}
}

.event-quote{max-width:55ch;margin-inline:auto;text-align:center;font-style:italic}

.event-details-grid > div{max-width:55ch}

.event-cta-inner{display:grid;grid-template-columns:1fr;gap:var(--space-lg);align-items:center;text-align:center}
.event-cta-content{max-width:55ch;margin-inline:auto;display:flex;flex-direction:column;gap:var(--space-sm);align-items:center}

@media(min-width:900px){
.event-cta-inner{grid-template-columns:1fr 1fr;text-align:left}
.event-cta-content{align-items:flex-start;margin-inline:0}
}


.pt-page{}

.pt-hero-inner{
 display:grid;
 grid-template-columns:1.1fr 0.9fr;
 gap:var(--space-xl);
 align-items:center;
}
.pt-hero-text{display:flex;flex-direction:column;gap:var(--space-md);max-width:520px}
.pt-hero-media{width:100%}

.pt-private-meaning .pt-narrow{
 max-width:720px;
 margin-inline:auto;
 text-align:center;
}

.pt-occasion-grid > *{min-width:0}
.pt-card{transition:transform .2s ease}
.pt-card:hover{transform:translateY(-4px)}

.pt-style-inner{
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:var(--space-xl);
 align-items:center;
}
.pt-style-text{max-width:520px}
.pt-style-media{width:100%}

.pt-scenario-grid > *{min-width:0}
.pt-scenario{max-width:320px;margin-inline:auto;text-align:center}

.pt-hosting .pt-narrow{
 max-width:680px;
 margin-inline:auto;
 text-align:center;
}

.pt-steps > *{min-width:0}
.pt-step{padding:var(--space-md);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);background:var(--color-surface-main);transition:background .2s}
.pt-step:hover{background:var(--color-surface-alt)}

.pt-notes .pt-narrow{
 max-width:640px;
 margin-inline:auto;
}
.pt-notes-box{padding:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-md)}

.pt-cta-inner{
 display:flex;
 flex-direction:column;
 align-items:center;
 gap:var(--space-md);
 text-align:center;
}
.pt-cta-media{margin-top:var(--space-md);width:100%;max-width:720px}

@media (max-width:900px){
 .pt-hero-inner{grid-template-columns:1fr}
 .pt-hero-media{order:-1}
 .pt-style-inner{grid-template-columns:1fr}
}


.thank-you{
  display:flex;
  justify-content:center;
}

.thank-you__card{
  width:100%;
  border:1px solid var(--color-border-soft);
  border-radius:var(--radius-lg);
  background:var(--color-surface-main);
  box-shadow:var(--shadow-soft);
  padding:var(--space-lg);
}

.thank-you__content{
  max-width:640px;
  margin-inline:auto;
  text-align:center;
}

.thank-you__label{
  display:block;
  font-size:var(--text-sm);
  color:var(--color-text-muted);
  font-style:italic;
  margin-bottom:var(--space-sm);
}

.thank-you__actions{
  margin-top:var(--space-md);
  display:flex;
  justify-content:center;
  gap:var(--space-sm);
  flex-wrap:wrap;
}

@media (min-width:700px){
  .thank-you__card{
    padding:var(--space-xl);
  }
}