*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#F7F4EF;color:#4D453F;font-family:Manrope,sans-serif;font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;width:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Sofia Sans Condensed','Arial Narrow',sans-serif;font-weight:600;line-height:1.03}h1{font-size:clamp(64px,6.2vw,96px);letter-spacing:-1.7px}h2{font-size:clamp(42px,4.5vw,65px);letter-spacing:-.8px}h3{font-size:36px}em{font-style:normal;color:#7A5AC8}p{color:#7C736C}.topline{height:35px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;background:#EFE7DE;font-size:12px;letter-spacing:1.2px}.topline span{letter-spacing:0}header{height:98px;padding:0 5%;display:flex;align-items:center;gap:32px;background:#F7F4EF;position:sticky;top:0;z-index:20;border-bottom:1px solid #D8D2CC66}.brand{font-family:'Sofia Sans Condensed',sans-serif;font-size:52px;font-weight:700;letter-spacing:-2px;line-height:.8;color:#7A5AC8;display:inline-flex;flex-direction:column}.brand span{font-family:Manrope,sans-serif;font-size:10px;font-weight:600;letter-spacing:3px;margin-top:10px}nav{display:flex;margin-left:auto;gap:30px;font-size:14px;font-weight:600}nav a:hover,.text-link:hover{color:#6546B1}.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:14px 26px;color:#fff;background:#B94F12;border-radius:5px;font-size:14px;font-weight:700;transition:background .2s}.button:hover{background:#9E3F0A}.button.small{min-height:45px;padding:10px 25px}.menu{display:none}.hero{display:grid;grid-template-columns:1fr 1.02fr;min-height:615px;padding:34px 3% 36px 5%;gap:30px;align-items:center}.hero-copy{padding:35px 0}.eyebrow{color:#6546B1;font-size:12px;letter-spacing:2px;font-weight:700;margin-bottom:24px}.lead{font-size:17px;line-height:1.8;margin:26px 0 30px}.actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap}.text-link{font-size:14px;font-weight:700;border-bottom:1px solid;padding:4px 0}.hero-note{font-size:12px;margin-top:29px}.hero-photo{position:relative;height:548px;align-self:stretch;border-radius:120px 8px 8px 8px;overflow:hidden}.hero-photo img{height:100%;object-position:48% center}.photo-label{position:absolute;left:26px;bottom:55px;background:#F7F4EF;padding:20px 27px;border-radius:4px;transform:rotate(-4deg)}.photo-label span{display:block;font-family:'Sofia Sans Condensed';font-size:33px;line-height:1;color:#6546B1}.photo-label small{font-size:12px}.photo-caption{position:absolute;bottom:17px;right:23px;color:#fff;font-size:10px;letter-spacing:1.5px}.facts{margin:0 5%;border-top:1px solid #D8D2CC;border-bottom:1px solid #D8D2CC;padding:24px 0;display:grid;grid-template-columns:repeat(4,1fr)}.facts div{display:flex;justify-content:center;align-items:center;gap:15px;border-right:1px solid #D8D2CC}.facts div:last-child{border:0}.facts strong{font-family:'Sofia Sans Condensed';font-weight:600;color:#7A5AC8;font-size:37px}.facts span{font-size:12px;color:#7C736C}footer{display:flex;justify-content:space-between;align-items:center;padding:48px 5%;gap:25px}footer p{font-size:12px}.skip{position:fixed;top:-100px}.skip:focus{top:0;background:white;padding:20px;z-index:99}:focus-visible{outline:3px solid #7A5AC8;outline-offset:5px}
@media(max-width:1000px){nav{gap:16px}header{gap:20px}.hero{gap:20px}h1{font-size:67px}.hero-photo{height:530px}.facts div{gap:8px;flex-direction:column}.facts span{font-size:12px}}
@media(max-width:720px){.topline{justify-content:center;font-size:10px;height:30px}.topline span,.topline>span{display:none}.topline{word-spacing:2px;gap:20px}header{height:83px;padding:0 6%;gap:16px}.brand{font-size:44px}.brand span{font-size:8px}header>.button{margin-left:auto}.menu{display:block;border:0;background:transparent;font-size:23px;color:#4D453F;padding:8px}nav{display:none;position:absolute;top:83px;left:0;right:0;background:#F7F4EF;padding:25px 6%;border-bottom:1px solid #D8D2CC}nav.open{display:flex;flex-direction:column;gap:20px}.hero{grid-template-columns:1fr;padding:28px 6%;gap:20px;min-height:0}.hero-copy{padding:10px 0}.eyebrow{font-size:11px;letter-spacing:1.4px;margin-bottom:20px}h1{font-size:64px;letter-spacing:-1px}.lead{font-size:16px;margin:20px 0 24px}.desktop{display:none}.actions{gap:20px}.hero-note{margin-top:20px}.hero-photo{height:340px;border-top-left-radius:80px}.photo-label{bottom:43px;left:20px;padding:15px 20px}.photo-caption{font-size:8px}.facts{grid-template-columns:1fr 1fr;margin:12px 6% 0;gap:20px;padding:22px 0}.facts div:nth-child(2){border:0}.facts strong{font-size:34px}footer{align-items:flex-start;flex-direction:column;padding:40px 6%}.button{min-height:50px}h2{font-size:44px}}
.section{padding:100px 7%}.intro{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.intro-copy p+p{margin-top:18px}.intro-copy .text-link{display:inline-block;margin-top:24px}.equipment{padding:0 7% 100px;display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.equipment img{height:310px;border-radius:6px;margin-bottom:23px}.equipment article:nth-child(2){padding-top:42px}.equipment span{font-size:10px;color:#6546B1;letter-spacing:1.8px;font-weight:700}.equipment h3{font-size:32px;margin:10px 0}.equipment p{font-size:14px}.family{background:#EFE7DE;display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.family-photo{position:relative}.family-photo>img{height:610px;border-radius:6px 110px 6px 6px}.family-tag{position:absolute;right:-35px;bottom:35px;padding:24px 32px;background:#F7F4EF;border-radius:5px;font-family:'Sofia Sans Condensed';font-size:36px;line-height:1.05;transform:rotate(3deg)}.family-copy>p:not(.eyebrow){margin-top:24px}.family-detail{margin:26px 0;border-top:1px solid #D8D2CC;padding-top:20px}.family-detail span{font-size:12px;font-weight:700;color:#6546B1}.family-detail p{font-size:14px;margin-top:6px}.section-heading{text-align:center;max-width:900px;margin:0 auto 45px}.section-heading>p:last-child:not(.eyebrow){margin-top:20px}.price-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;max-width:1080px;margin:auto}.price-card{background:white;border:1px solid #D8D2CC;border-radius:8px;padding:38px}.price-card.featured{border-top:5px solid #7A5AC8;padding-top:34px}.price-card .eyebrow{font-size:11px;margin-bottom:15px}.price-card>p:not(.eyebrow){font-size:14px;margin:12px 0}.price{font-family:'Sofia Sans Condensed';font-size:63px;color:#6546B1;margin:28px 0 20px;line-height:1.1}.price span{font-family:Manrope;font-size:13px;white-space:nowrap;color:#7C736C}.price-card ul{padding:20px 0;list-style:none;border-top:1px solid #EFE7DE;font-size:14px;line-height:2.4;margin:0 0 18px}.price-card li:before{content:'✓';color:#7A5AC8;margin-right:12px}.price-card .button{width:100%}.offer-note{text-align:center;font-size:12px;margin-top:25px}.offer-note a{text-decoration:underline}.booking{background:#7A5AC8;color:white;padding:70px 8%;display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.booking .eyebrow{color:#fff;font-size:11px}.booking h2 em{color:#fff}.booking p{color:#fff;margin-top:22px}.booking .eyebrow{margin-top:0}.booking-action{border-left:1px solid #ffffff50;padding-left:50px}.booking-action .button{margin:25px 0 15px;background:#fff;color:#9E3F0A;min-width:250px}.booking-action .button:hover{background:#EFE7DE}.booking-action>span{display:block;font-size:12px;color:white}.gift{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.gift-type{min-height:360px;background:#EFE7DE;border-radius:8px;display:flex;flex-direction:column;justify-content:space-between;padding:35px 38px;border:1px solid #D8D2CC;transform:rotate(-3deg);box-shadow:10px 15px 0 #7A5AC819}.gift-type>span{font-size:11px;letter-spacing:2px;color:#6546B1}.gift-type>p{font-family:'Sofia Sans Condensed';font-size:53px;line-height:1.05;color:#4D453F}.gift h2{font-size:55px}.gift>div>p:not(.eyebrow){margin:24px 0}.gift .gift-meta{font-size:13px}.reviews{background:#EFE7DE}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.review-grid figure{margin:0;background:#F7F4EF;padding:30px;border-radius:5px;display:flex;flex-direction:column}.quote-mark{font-family:Georgia;font-size:65px;color:#7A5AC8;line-height:.9}.review-grid blockquote{font-family:'Sofia Sans Condensed';font-size:32px;line-height:1.2;margin:12px 0 30px;flex:1}.review-grid figcaption{font-size:13px;font-weight:700}.review-grid figcaption span{display:block;font-size:12px;font-weight:400;color:#7C736C;margin-top:3px}.review-source{display:block;text-align:center;font-size:12px;text-decoration:underline;margin-top:28px}.visit{display:grid;grid-template-columns:1fr 1fr;gap:8%}.visit-intro{margin:22px 0 30px}.visit-details>div{display:flex;gap:22px;border-bottom:1px solid #D8D2CC;padding:22px 0}.visit-details>div:first-child{padding-top:0}.visit-details>div>span{color:#7A5AC8;font-size:13px}.visit-details h3{font-size:28px;margin-bottom:12px}.visit-details p{font-size:14px}.visit-details p+p{margin-top:12px}.visit-details .text-link{display:inline-block;margin-top:15px}.legal-links{display:flex;justify-content:center;flex-wrap:wrap;gap:28px;padding:22px 6%;background:#EFE7DE;font-size:12px}.legal-links a:hover{text-decoration:underline}
@media(min-width:1600px){body{max-width:1800px;margin:auto}}
@media(max-width:1000px){.section{padding:75px 6%}.equipment{padding:0 6% 75px}.equipment img{height:250px}.family{gap:7%}.family-tag{right:-20px;font-size:30px}.family-photo>img{height:630px}.price-card{padding:27px}.price-card.featured{padding-top:23px}.price span{display:block;margin-top:12px}.gift{gap:7%}.gift-type{padding:25px;min-height:320px}.gift-type>p{font-size:45px}.gift h2{font-size:48px}.booking-action{padding-left:30px}}
@media(max-width:720px){.section{padding:60px 6%}.intro,.family,.gift,.visit{grid-template-columns:1fr;gap:32px}.equipment{grid-template-columns:1fr;padding:0 6% 55px;gap:32px}.equipment article:nth-child(2){padding-top:0}.equipment img{height:290px;margin-bottom:15px}.equipment h3{font-size:32px}.family-photo>img{height:380px}.family-tag{right:12px;bottom:22px;font-size:31px}.family-copy>p:not(.eyebrow){margin-top:18px}.section-heading{text-align:left;margin-bottom:30px}.price-grid{grid-template-columns:1fr;gap:20px}.price-card{padding:28px}.price-card.featured{padding-top:24px}.price{font-size:59px}.price-card li{line-height:1.7;margin:8px 0}.offer-note{text-align:left}.booking{grid-template-columns:1fr;padding:55px 6%;gap:30px}.booking-action{border-left:0;border-top:1px solid #ffffff50;padding:10px 0 0}.booking-action .button{width:100%;background:#B94F12;color:#fff}.booking-action .button:hover{background:#9E3F0A}.gift-type{min-height:300px;margin:10px 8px 15px;padding:28px}.gift-type>p{font-size:46px}.gift-type>span{font-size:10px}.gift h2{font-size:44px}.review-grid{grid-template-columns:1fr;gap:16px}.review-grid figure{padding:25px}.review-grid blockquote{font-size:30px}.review-source{text-align:left}.legal-links{justify-content:flex-start;gap:12px 23px}.visit-details p{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
