

:root{--ink:#171717;--gold:#b9924f;--paper:#faf8f4;--line:#ded7cb}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.55}a{color:inherit}img{display:block;max-width:100%}header{background:#111;color:white;position:sticky;top:0;z-index:10;border-bottom:1px solid #3b352a}.nav{max-width:1200px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:10px 24px}.brand{font-family:'Playfair Display',Georgia,serif;font-size:1.35rem;text-decoration:none;color:#e4c786;white-space:nowrap}.brand img{width:190px;height:auto;max-height:62px;object-fit:contain}.links{display:flex;align-items:center;gap:26px}.links a{text-decoration:none;font-weight:600;font-size:.9rem}.links a:hover,.social a:hover{text-decoration:underline}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 23px;background:var(--gold);color:#111;text-decoration:none;font-weight:700;border:1px solid var(--gold);border-radius:3px;text-align:center}.button:hover{background:#e0bd79}.nav .button{min-height:42px}.hero{background:#111;color:white;display:grid;grid-template-columns:1fr 1fr;min-height:580px}.hero-copy{padding:70px max(32px,calc((100vw - 1152px)/2)) 70px max(32px,calc((100vw - 1152px)/2));padding-right:42px;display:flex;flex-direction:column;justify-content:center}.eyebrow{color:var(--gold);text-transform:uppercase;font-size:.78rem;font-weight:700;letter-spacing:.18em;margin:0 0 18px}.hero h1,.section-title,.contact h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;line-height:1.08;letter-spacing:-.035em}.hero h1{font-size:clamp(2.8rem,5.1vw,5.5rem);margin:0 0 24px}.hero p{font-size:1.13rem;color:#ece8df;max-width:520px;margin:0 0 30px}.hero-photo{min-height:520px;background:#342c22}.hero-photo img{height:100%;width:100%;object-fit:cover}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.text-link{display:inline-flex;align-items:center;min-height:48px;padding:10px 4px;color:#fff;text-underline-offset:5px;font-weight:600}.wrap{max-width:1200px;padding:0 24px;margin:auto}section{scroll-margin-top:76px}.intro{padding:72px 0 20px;text-align:center}.tent-mark{width:62px;height:62px;object-fit:contain;margin:0 auto 18px}.intro p{max-width:680px;margin:0 auto 16px;color:#52504b}.section-title{font-size:clamp(2.3rem,4vw,3.7rem);margin:0 0 18px}.experiences{padding:56px 0 82px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:25px}.section-head p{max-width:520px;margin:0;color:#555}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:#fff;border:1px solid var(--line);overflow:hidden}.card img{height:220px;width:100%;object-fit:cover}.card-body{padding:24px}.card h3{font-family:'Playfair Display',Georgia,serif;font-size:1.55rem;line-height:1.2;margin:0 0 10px}.card p{color:#555;margin:0}.card .detail{font-size:.86rem;text-transform:uppercase;letter-spacing:.11em;color:#926c33;font-weight:700;margin-bottom:10px}.theme-section{background:#171717;color:#fff;padding:75px 0}.theme-layout{display:grid;grid-template-columns:1fr 1.25fr;gap:70px;align-items:start}.theme-layout p{color:#dedbd5;max-width:440px}.theme-list{display:flex;flex-wrap:wrap;gap:10px}.theme-list span{border:1px solid #736b5e;border-radius:100px;padding:9px 15px;font-size:.9rem}.theme-section .button{margin-top:26px}.extras{padding:78px 0}.extras-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center}.extras img{width:100%;height:430px;object-fit:cover}.extras ul{padding-left:20px;margin:22px 0 26px}.extras li{margin:7px 0}.how{background:#eee9df;padding:76px 0}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:30px}.step{border-top:1px solid #bba67f;padding-top:16px}.step strong{color:#8e682f;font-size:.9rem}.step h3{font-size:1.1rem;margin:12px 0 8px}.step p{margin:0;color:#57534d}.about{padding:78px 0}.about-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}.about img{width:100%;height:380px;object-fit:cover}.about p{max-width:600px;color:#51504a}.contact{background:#171717;color:#fff;text-align:center;padding:76px 20px 100px}.contact h2{font-size:clamp(2.4rem,4vw,4rem);margin:0 0 14px}.contact-logo{width:165px;height:165px;object-fit:contain;margin:0 auto 20px}.contact p{color:#e5e0d6;max-width:590px;margin:0 auto 24px}.contact .button{margin:5px}.social{display:flex;justify-content:center;gap:25px;margin-top:25px}.social a{color:#e0c182;text-underline-offset:4px}footer{background:#0c0c0c;color:#bcb8ae;padding:28px 24px;text-align:center;font-size:.88rem}.mobile-cta{display:none}@media(max-width:900px){.cards{grid-template-columns:repeat(2,1fr)}.theme-layout,.about-grid{gap:35px}.steps{grid-template-columns:repeat(2,1fr)}}@media(max-width:680px){.nav{padding:9px 16px}.brand img{width:154px}.links{gap:11px}.links a:not(.button){display:none}.nav .button{font-size:.82rem;padding:8px 12px;min-height:40px}.hero{display:flex;flex-direction:column-reverse}.hero-photo{min-height:0;height:290px}.hero-copy{padding:37px 22px 48px}.hero h1{font-size:2.85rem}.hero p{font-size:1rem}.wrap{padding:0 20px}.intro{padding:58px 0 4px}.experiences,.extras,.about{padding:52px 0}.section-head{display:block}.cards{grid-template-columns:1fr;gap:14px}.card{display:grid;grid-template-columns:35% 65%;min-height:160px}.card img{height:100%;min-height:160px}.card-body{padding:16px}.card h3{font-size:1.25rem}.card p{font-size:.91rem}.card .detail{font-size:.72rem}.theme-section,.how{padding:58px 0}.theme-layout,.extras-grid,.about-grid{grid-template-columns:1fr;gap:25px}.extras img,.about img{height:270px}.steps{gap:18px}.contact{padding:62px 20px 100px}.mobile-cta{display:block;position:fixed;bottom:0;left:0;right:0;z-index:11;background:#111;padding:9px 14px calc(9px + env(safe-area-inset-bottom));box-shadow:0 -2px 14px #0003}.mobile-cta .button{width:100%;min-height:44px}footer{padding-bottom:95px}}@media(max-width:380px){.card{grid-template-columns:32% 68%}.card-body{padding:12px}.card p{font-size:.85rem}.hero h1{font-size:2.5rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.mini-steps{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:25px auto 0}.mini-steps span{border:1px solid var(--line);padding:9px 15px;border-radius:100px;font-size:.88rem;font-weight:700}.theme-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}.theme-heading p:last-child{max-width:360px;color:#ddd}.theme-gallery{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.theme-card{margin:0;background:#272523}.theme-card img{width:100%;aspect-ratio:3/4;object-fit:cover}.theme-card figcaption{padding:10px 9px 12px;font-weight:600;font-size:.9rem;text-align:center}.reviews{padding:75px 0;background:#eee9df}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:25px 0}.review-grid blockquote{margin:0;background:#fff;padding:26px;border:1px solid #ded7cb}.review-grid span{color:#a87a32;letter-spacing:3px}.review-grid p{font-family:'Playfair Display',Georgia,serif;font-size:1.15rem;line-height:1.45;margin:14px 0}.review-grid cite{font-style:normal;font-weight:700;font-size:.82rem;color:#625d53}.review-link{font-weight:700;text-underline-offset:4px}.contact{text-align:left;padding:75px 20px}.contact-wrap{max-width:1080px;margin:auto;display:grid;grid-template-columns:.8fr 1.2fr;gap:30px 55px}.contact-logo{margin:0 0 20px}.contact p{margin:0;color:#ddd}.inquiry-form{background:#f8f6f1;color:#171717;padding:26px;border-radius:4px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.inquiry-form label{display:block;font-size:.9rem;font-weight:700;margin-bottom:14px}.inquiry-form input,.inquiry-form select,.inquiry-form textarea{display:block;width:100%;min-height:44px;margin-top:6px;padding:10px 12px;font:inherit;color:#171717;background:#fff;border:1px solid #aaa;border-radius:2px}.inquiry-form textarea{resize:vertical}.inquiry-form .button{cursor:pointer;font:inherit;font-weight:700;width:100%}.honey{position:absolute;left:-9999px}.contact .social{grid-column:1/-1;justify-content:flex-start;margin:0}.extras p{max-width:540px}.extras .button{margin-top:14px}@media(max-width:900px){.theme-gallery{grid-template-columns:repeat(4,1fr)}.contact-wrap{grid-template-columns:1fr 1.35fr;gap:28px}}@media(max-width:680px){.theme-heading{display:block}.theme-gallery{grid-template-columns:repeat(2,1fr);gap:12px}.theme-card figcaption{font-size:.88rem}.reviews{padding:55px 0}.review-grid{grid-template-columns:1fr;gap:12px}.contact-wrap{display:block}.contact-logo{width:110px;height:110px}.contact h2{font-size:2.5rem}.contact p{margin-bottom:25px}.inquiry-form{padding:18px}.form-grid{grid-template-columns:1fr}.contact .social{margin-top:24px}.mini-steps{justify-content:flex-start}.intro{text-align:left}.tent-mark{margin-left:0}.contact{padding-bottom:100px}}.card img{height:260px;object-fit:contain;background:#e8e5dd}.theme-card img{object-fit:contain;background:#272523}@media(max-width:680px){.card{display:block}.card img{height:250px;min-height:0;width:100%;object-fit:contain}.card-body{padding:18px}}.extras-photos{display:grid;grid-template-columns:1fr 1fr;gap:10px}.extras-photos img{width:100%;height:205px;object-fit:cover}.extras-photos img:first-child{grid-row:span 2;height:420px}.about img{height:auto;max-height:540px;object-fit:contain;object-position:center}.about-grid{grid-template-columns:.85fr 1.15fr}@media(max-width:680px){.extras-photos img{height:150px}.extras-photos img:first-child{height:310px}.about img{height:auto;max-height:none;width:100%;object-fit:contain}}.about{position:relative;isolation:isolate}.about::before{content:"";position:absolute;z-index:0;pointer-events:none;left:2%;top:50%;transform:translateY(-50%);width:42%;aspect-ratio:1;background:url("/assets/logo-tent.png") center/contain no-repeat;opacity:.22}.about-grid{position:relative;z-index:1}@media(max-width:680px){.about::before{width:68%;left:15%;top:25%;opacity:.16}.about-grid{grid-template-columns:1fr}}.inquiry-form .inquiry-status{margin:14px 0 0;color:#333;font-size:1rem;line-height:1.5}.inquiry-status:empty{display:none}.inquiry-recovery{margin-top:16px;padding-top:16px;border-top:1px solid #ded7cb}.inquiry-recovery[hidden]{display:none}.inquiry-form .inquiry-recovery p{margin:10px 0;color:#4a4540;font-size:.9rem}.inquiry-recovery button{background:transparent;border:0;padding:8px 0;font:inherit;text-decoration:underline;cursor:pointer}.inquiry-form button:disabled{opacity:.65;cursor:wait}
.service-link{display:inline-flex;align-items:center;min-height:44px;margin-top:10px;color:#765422;font-weight:700;text-underline-offset:4px}.planning{padding:60px 0}.planning-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:45px}.planning p{color:#51504a}.faqs details{border-bottom:1px solid var(--line);padding:14px 0}.faqs summary{cursor:pointer;font-weight:700;min-height:32px}.faqs details p{margin:12px 0}.footer-links{display:flex;justify-content:center;flex-wrap:wrap;gap:10px 22px;margin-bottom:18px}.footer-links a{min-height:32px;display:inline-flex;align-items:center;text-underline-offset:4px}.service-hero{background:#111;color:#fff;padding:45px 0 55px}.service-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.service-hero h1{font:500 clamp(2.2rem,4vw,3.6rem)/1.12 'Playfair Display',Georgia,serif;margin:12px 0 22px}.service-hero img{width:100%;height:430px;object-fit:contain;background:#252321}.service-hero p{max-width:580px;color:#ece8df}.breadcrumbs{font-size:.88rem;margin:0 0 28px}.breadcrumbs a{text-underline-offset:4px}.service-content{padding:52px 24px 60px;max-width:960px;margin:auto}.service-content h2{font:500 2rem/1.2 'Playfair Display',Georgia,serif;margin:32px 0 16px}.service-content li{margin:8px 0}.service-content .button{margin-top:16px}.service-nav{border-top:1px solid var(--line);margin-top:38px;padding-top:24px}.service-nav a{display:inline-flex;min-height:44px;align-items:center;margin-right:22px;text-underline-offset:4px}.skip-link{position:absolute;left:16px;top:-100px;z-index:30;background:#fff;color:#111;padding:10px}.skip-link:focus{top:8px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b9924f;outline-offset:4px}@media(max-width:680px){.planning{padding:45px 0}.planning-grid,.service-hero-grid{grid-template-columns:1fr;gap:24px}.service-hero{padding:28px 0 36px}.service-hero img{height:340px}.service-content{padding:28px 20px 45px}.service-hero h1{font-size:2.25rem}.service-hero .breadcrumbs{margin-bottom:18px}.footer-links{gap:6px 15px}}

.hero-photo picture{display:block;height:100%;width:100%}.theme-card img{height:auto}.extras-photos picture:first-child{grid-row:span 2}.extras-photos picture:first-child img{height:420px}.extras-photos picture:not(:first-child) img{height:205px}@media(max-width:680px){.extras-photos picture:first-child img{height:310px}.extras-photos picture:not(:first-child) img{height:150px}}

.experience-gallery{padding-top:52px;padding-bottom:12px}.experience-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.experience-photo{display:block;background:#eee9df;border:1px solid var(--line);overflow:hidden}.experience-photo img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:contain}.experience-photo:hover{outline:2px solid var(--gold);outline-offset:3px}@media(max-width:900px){.experience-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.experience-gallery{padding-top:35px}.experience-photo-grid{grid-template-columns:1fr;gap:16px}}

.experience-photo-grid--four{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:680px){.experience-photo-grid--four{grid-template-columns:1fr}}

.experience-photo-grid--single-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:900px;margin-inline:auto}@media(max-width:680px){.experience-photo-grid--single-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}}

.experience-photo-grid--bundle{grid-template-columns:repeat(2,minmax(0,1fr));max-width:720px;margin-inline:auto;gap:16px}@media(max-width:680px){.experience-photo-grid--bundle{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}
