:root{--orange:#ff620a;--ink:#171717;--paper:#f4f4f0;--muted:#a9a9a5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.5}a{color:inherit;text-decoration:none}button,select{font:inherit}button,a,summary,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #1273dd;outline-offset:5px}img{display:block;width:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2{font-family:Impact,'Arial Narrow',Arial,sans-serif;font-weight:900;line-height:1.02;letter-spacing:-.025em}h2{font-size:clamp(2.8rem,5.5vw,5.6rem)}em{font-style:normal;color:var(--orange)}.skip{position:fixed;top:-80px;left:20px;background:white;padding:12px;z-index:100}.skip:focus{top:10px}.header{display:flex;align-items:center;justify-content:space-between;padding:21px 4.5%;background:var(--paper);position:relative;z-index:10;gap:25px}.wordmark{font-weight:950;font-size:2.1rem;letter-spacing:-2px;line-height:1;white-space:nowrap}.wordmark span{color:var(--orange)}.wordmark small{font-size:1.25rem;letter-spacing:-1px}.wordmark i{font-style:normal;font-size:.75rem;vertical-align:top;margin-left:4px;letter-spacing:0}.header nav{display:flex;gap:31px;font-size:.875rem;font-weight:600}.header nav a:hover,.text-link:hover{color:var(--orange)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:15px 23px;background:var(--orange);border:1px solid transparent;border-radius:5px;font-weight:700;font-size:.9375rem;cursor:pointer;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px);background:#ed5500}.button span{font-size:1.4rem;line-height:1}.menu-toggle{display:none}.hero{background:var(--orange);display:grid;grid-template-columns:1.25fr 1fr;min-height:650px}.hero-copy{padding:49px 4.4vw 24px;display:flex;flex-direction:column}.eyebrow{font-size:.75rem;letter-spacing:.11em;font-weight:700}.cross{font-size:1.5rem;vertical-align:middle;margin-right:10px}h1{font-size:clamp(3rem,5.8vw,6.3rem);margin-top:28px}.outline{color:transparent;-webkit-text-stroke:1.5px var(--ink)}.period{color:white}.hero-bottom{margin-top:30px;display:flex;align-items:flex-end;gap:26px}.hero-bottom p{max-width:285px;font-size:.9375rem;line-height:1.65}.light{background:var(--paper);white-space:nowrap}.light:hover{background:white}.hero-meta{border-top:1px solid #a43c0066;padding-top:20px;margin-top:auto;display:flex;justify-content:space-between;gap:15px;font-size:.65rem;font-weight:700;letter-spacing:.08em}.hero-visual{position:relative;min-width:0;isolation:isolate;overflow:hidden}.hero-visual>img{height:100%;position:absolute;inset:0;object-position:center 41%;filter:saturate(.8)}.image-shade{position:absolute;inset:0;background:linear-gradient(180deg,#0002 10%,transparent 35%,#000c)}.frame-label{position:absolute;top:28px;left:28px;background:#17171780;border:1px solid #ffffff55;border-radius:30px;padding:8px 14px;color:#fff;font-size:.65rem;font-weight:bold;letter-spacing:.12em}.play{position:absolute;top:43%;left:45%;border:1px solid white;border-radius:50%;width:64px;height:64px;display:grid;place-items:center;color:white;background:#ffffff22;backdrop-filter:blur(8px);transition:background .2s}.play:hover{background:var(--orange)}.visual-caption{position:absolute;left:35px;bottom:35px;color:#fff}.visual-caption>span{font-size:.625rem;letter-spacing:.12em}.visual-caption strong{display:block;font-size:clamp(2rem,3.3vw,3.5rem);line-height:1.05;letter-spacing:-.04em;margin:14px 0}.visual-caption a{font-size:.8rem;border-bottom:1px solid #ffffff80;padding-bottom:5px}.angle-tag{position:absolute;right:23px;bottom:42px;transform:rotate(8deg);padding:12px 17px;border-radius:4px;background:var(--orange);font-size:2.6rem;font-weight:900;letter-spacing:-.06em;line-height:1.1}.angle-tag small{display:block;font-size:.5rem;letter-spacing:.02em;margin-top:6px}.ticker{display:flex;align-items:center;justify-content:space-around;gap:26px;overflow:hidden;padding:20px 25px;background:var(--ink);color:#fff;font-size:1rem;white-space:nowrap;font-weight:bold;letter-spacing:.025em}.ticker b{color:var(--orange);font-size:1.6rem}.section{padding:85px 6%}.section-top{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:30px}.section-top>p:last-child{font-size:.9rem}.services h2{margin-bottom:40px}.service-list article{display:grid;grid-template-columns:45px 1fr 1fr 55px;align-items:center;gap:25px;border-top:1px solid #cacac6;padding:30px 0}.service-list article:last-child{border-bottom:1px solid #cacac6}.number{font-size:.8rem;color:#686863}.service-list h3{font-size:clamp(1.4rem,2.7vw,2.5rem);letter-spacing:-.04em}.service-list p{font-size:.9375rem;color:#565651;max-width:350px}.service-list a{border:1px solid #bcbcb8;display:grid;place-items:center;width:50px;height:50px;border-radius:50%;font-size:1.5rem;transition:background .2s}.service-list a:hover{background:var(--orange);border-color:var(--orange)}.moments{background:#e9e9e4}.moments .eyebrow{margin-bottom:23px}.text-link{font-weight:700;font-size:.9rem;text-decoration:underline;text-underline-offset:7px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:43px}.photo{height:390px;position:relative;overflow:hidden;border-radius:5px}.photo img{height:100%;transition:transform .4s}.moment-card:hover img{transform:scale(1.04)}.pill{position:absolute;top:17px;left:17px;background:#f4f4f0;padding:7px 10px;border-radius:30px;font-size:.625rem;font-weight:700;letter-spacing:.03em}.round-arrow{position:absolute;bottom:17px;right:17px;border-radius:50%;background:var(--orange);width:40px;height:40px;display:grid;place-items:center;font-size:1.4rem}.moment-card h3{font-size:1.25rem;margin:18px 0 4px;letter-spacing:-.03em}.moment-card p{font-size:.875rem;color:#555}.about{background:var(--ink);color:var(--paper)}.about-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;margin-top:35px}.about-copy{max-width:440px}.asterisk{display:block;color:var(--orange);font-size:5rem;line-height:1;margin-bottom:22px}.about-copy p{margin-bottom:22px;color:#d0d0cc;line-height:1.8}.about-copy .text-link{display:inline-block;margin-top:12px}.faq{display:grid;grid-template-columns:.85fr 1.2fr;gap:60px}.faq .eyebrow{margin-bottom:24px}details{border-bottom:1px solid #c9c9c4}summary{list-style:none;font-weight:bold;padding:24px 0;display:flex;justify-content:space-between;gap:25px;cursor:pointer}summary::-webkit-details-marker{display:none}summary span{color:#b74000;font-size:1.3rem}details[open] summary span{transform:rotate(45deg)}details p{padding:0 32px 24px 0;color:#565651;font-size:.9375rem;line-height:1.75}.booking{background:var(--orange);display:grid;grid-template-columns:1.25fr 1fr;gap:80px;align-items:center}.booking .eyebrow{margin-bottom:28px}.booking h2{font-size:clamp(3.5rem,6.7vw,7rem);margin-bottom:25px}.booking h2 span{color:var(--paper)}.booking p{font-size:1rem}.contact-number{display:inline-block;font-weight:bold;margin-top:20px}.booking form{padding:35px;border:1px solid #17171740;border-radius:7px;background:#ffffff13}label{display:block;font-size:.875rem;font-weight:bold;margin-bottom:10px}select{width:100%;padding:16px 14px;border:1px solid #17171780;background:transparent;color:#171717;border-radius:4px;margin-bottom:24px;cursor:pointer}select option{background:var(--paper)}.dark{background:var(--ink);color:white;width:100%;margin:3px 0 15px}.dark:hover{background:#343434}.booking .form-note{font-size:.75rem;line-height:1.7;color:#39200e}footer{background:var(--ink);color:var(--paper);padding:45px 6% 25px}.footer-top,.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px}.footer-top p{font-size:.75rem;letter-spacing:.06em}.footer-top>a:last-child{font-size:.875rem}.footer-bottom{margin-top:38px;padding-top:20px;border-top:1px solid #444;font-size:.75rem;color:#adada8}.footer-bottom span:nth-child(2){letter-spacing:.07em}@media(min-width:1500px){.hero{min-height:740px}.hero-copy{padding-top:65px}.hero-bottom{margin-top:45px}}@media(max-width:1100px){.header nav{gap:19px}.hero{min-height:610px}.hero-bottom{display:block}.hero-bottom .button{margin-top:22px}.hero-meta{margin-top:25px;font-size:.6rem}.hero-copy{padding-top:35px}.photo{height:330px}.booking{gap:35px}.about-grid{gap:45px}}@media(max-width:760px){html{scroll-padding-top:20px}.header{padding:20px 6%;flex-wrap:wrap}.wordmark{font-size:1.8rem}.nav-cta{display:none}.menu-toggle{display:flex;background:transparent;border:1px solid #bfbfba;border-radius:4px;padding:8px 12px;font-size:.875rem;gap:13px;align-items:center}.header nav{display:none;order:3;width:100%;padding:18px 0 4px;flex-direction:column;gap:20px}.header nav.open{display:flex}.hero{display:block}.hero-copy{padding:35px 6% 23px}h1{font-size:clamp(2.8rem,10.2vw,4.8rem);margin-top:23px}.eyebrow{font-size:.6875rem}.hero-bottom{margin-top:23px;display:flex;align-items:flex-start;flex-direction:column;gap:20px}.hero-bottom p{max-width:340px}.hero-bottom .button{margin:0}.hero-meta{font-size:.6rem;margin-top:30px;padding-top:18px}.hero-visual{height:470px}.hero-visual>img{object-position:center 38%}.visual-caption strong{font-size:2.8rem}.ticker{justify-content:flex-start;font-size:.85rem;gap:25px;padding:15px 20px}.section{padding:58px 6%}.section-top{align-items:flex-start;gap:23px}.section-top>p:last-child{font-size:.8rem;max-width:140px}h2{font-size:clamp(2.8rem,9vw,4rem)}.service-list article{grid-template-columns:27px 1fr 40px;gap:10px 12px;padding:24px 0}.service-list h3{font-size:1.55rem}.service-list p{grid-column:2;grid-row:2;font-size:.875rem;margin-top:6px}.service-list a{grid-column:3;grid-row:1 / 3;width:38px;height:38px}.gallery{grid-template-columns:1fr;gap:33px;margin-top:28px}.photo{height:420px}.moments .section-top{flex-direction:column}.moment-card h3{font-size:1.2rem}.about-grid,.faq,.booking{grid-template-columns:1fr;gap:30px}.about-copy{max-width:none}.asterisk{font-size:3.5rem}.faq{gap:17px}.booking h2{font-size:clamp(3.5rem,12vw,5rem)}.booking form{padding:23px}.footer-top,.footer-bottom{flex-wrap:wrap;gap:20px}.footer-top p{order:3;width:100%}.footer-bottom span:nth-child(2){display:none}.footer-bottom{margin-top:25px}.visual-caption{left:24px;bottom:28px}.angle-tag{right:20px;bottom:35px}.play{left:calc(50% - 32px)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
/* Keep display lettering open and legible across installed system fonts. */
h1,h2{font-weight:400;letter-spacing:.005em;line-height:1.06}
.eyebrow,.pill,.frame-label,.visual-caption>span,.hero-meta,.angle-tag small{font-size:.75rem}
.hero-meta{flex-wrap:wrap}
@media(max-width:480px){.angle-tag{top:90px;bottom:auto;right:18px}.hero-meta{gap:12px}.hero-visual{height:480px}}
