@font-face{font-family:Manrope;src:url('assets/manrope-600.ttf') format('truetype');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:Manrope;src:url('assets/manrope-800.ttf') format('truetype');font-style:normal;font-weight:800;font-display:swap}
@font-face{font-family:'DM Sans';src:url('assets/dm-sans-400.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'DM Sans';src:url('assets/dm-sans-500.ttf') format('truetype');font-style:normal;font-weight:500 700;font-display:swap}

:root{--paper:#f7f7f2;--ink:#172121;--muted:#626965;--line:#d4d8d0;--orange:#f65331;--dark:#172b29;--lime:#d6eb77;--gutter:clamp(24px,4.4vw,88px);--heading:'Manrope',Arial,sans-serif;--body:'DM Sans',Arial,sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:32px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}
body.modal-open{overflow:hidden}
button,input,select,textarea{font:inherit;color:inherit}
button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
button,a{touch-action:manipulation}
button{border:0}
button:disabled{cursor:default}
a{color:inherit;text-decoration:none}
img{display:block;width:100%;height:auto}
figure,p,h1,h2,h3{margin:0}
button{background:none}
h1,h2,h3{font-family:var(--heading);font-weight:600}
h2{font-size:clamp(2.7rem,4.6vw,5.1rem);line-height:1.08;letter-spacing:-.055em}
em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.065em}
::selection{background:var(--orange);color:var(--ink)}
:focus-visible{outline:3px solid var(--orange);outline-offset:6px}
[hidden]{display:none!important}
.page-pad{padding-inline:var(--gutter)}
.section-space{padding-block:128px}
.eyebrow,.section-label{font-size:.75rem;font-weight:500;letter-spacing:.065em;line-height:1.5}
.section-label{display:flex;align-items:baseline;gap:18px}
.section-number{font-variant-numeric:tabular-nums;opacity:.65}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;left:20px;top:-100px;z-index:100;background:var(--ink);color:white;padding:14px 22px}
.skip-link:focus{top:15px}
.orange-text,.brand-dot{color:var(--orange)}
.muted{color:var(--muted)}
.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;font-size:1rem;font-weight:500;padding:10px 0;border-bottom:1px solid currentColor;text-align:left;transition:color .2s}
.text-link:hover{color:var(--orange)}
.text-link span{font-size:1.45rem;line-height:1;transition:transform .2s}
.text-link:hover span{transform:translate(3px,-3px)}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:17px 23px;font-size:.875rem;font-weight:500;line-height:1.2;min-height:54px;transition:background .2s,color .2s}
.button-dark{background:var(--ink);color:var(--paper)}
.button-dark:hover{background:var(--orange);color:var(--ink)}
.button span{font-size:1.5rem}
.circle-button{display:inline-flex;align-items:center;justify-content:center;width:50px;height:50px;border:1px solid currentColor;border-radius:50%;font-size:1.5rem;transition:background .2s,color .2s,opacity .2s}
.circle-button:hover:not(:disabled){background:var(--ink);color:var(--paper)}
.circle-button:disabled{opacity:.25}

/* A compact, editorial masthead. */
.site-header{height:108px;padding-inline:var(--gutter);display:flex;align-items:center;gap:34px;border-bottom:1px solid var(--line);position:relative;z-index:10}
.wordmark{font-family:var(--heading);font-size:3.4rem;font-weight:800;line-height:1;letter-spacing:-.1em;padding-right:5px}
.header-location{font-size:.75rem;font-weight:500;letter-spacing:.035em;line-height:1.5;margin-left:5px}
.main-nav{display:flex;align-items:center;gap:28px;margin-left:auto;font-size:.875rem}
.main-nav a{padding-block:14px;position:relative}
.main-nav a::after{content:'';position:absolute;bottom:8px;left:0;right:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .2s}
.main-nav a:hover::after{transform:scaleX(1)}
.header-cta{margin-left:10px}
.menu-toggle{display:none}

/* Type gets room to breathe; the photograph stays the hero. */
.hero-heading{padding-top:54px;padding-bottom:58px;display:flex;align-items:flex-end;justify-content:space-between;gap:35px}
.hero-heading .eyebrow{display:flex;gap:9px;align-items:center;margin-bottom:25px}
.status-dot{width:7px;height:7px;display:inline-block;background:var(--orange);border-radius:50%}
h1{font-size:clamp(4rem,7.35vw,8.9rem);line-height:1.02;letter-spacing:-.067em}
.hero-aside{padding-bottom:5px;flex-shrink:0}
.hero-aside>p:first-child{font-size:1.25rem;line-height:1.4;letter-spacing:-.025em;margin-bottom:16px}
.hero-aside .muted{font-size:1rem;line-height:1.6}
.hero-aside .text-link{margin-top:16px}
.hero-photo{position:relative;height:clamp(500px,47.5vw,790px);overflow:hidden;background:#143449;color:white}
.hero-photo>img{height:100%;object-fit:cover;object-position:center 45%}
.hero-photo::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.25),transparent 26%,transparent 55%,rgba(0,0,0,.48))}
.photo-topline{position:absolute;top:29px;left:var(--gutter);right:var(--gutter);z-index:1;display:flex;justify-content:space-between;gap:20px;font-size:.75rem;font-weight:500;letter-spacing:.08em}
.hero-photo-bottom{position:absolute;bottom:50px;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;align-items:flex-end;z-index:1}
.hero-photo-bottom p{font-family:var(--heading);font-size:clamp(2rem,3.4vw,4.2rem);letter-spacing:-.05em;line-height:1.1}
.round-link{width:95px;height:95px;display:grid;place-items:center;background:var(--orange);color:var(--ink);border-radius:50%;font-size:2.8rem;transition:transform .25s,background .25s}
.round-link:hover{transform:rotate(-35deg);background:var(--lime)}
.photo-credit{position:absolute;bottom:12px;right:var(--gutter);z-index:1;font-size:.75rem;letter-spacing:.09em;color:rgba(255,255,255,.8)}
.hero-caption{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-block:22px;border-bottom:1px solid var(--line);font-size:.875rem}
.hero-caption>span:last-child{font-size:.75rem;letter-spacing:.07em;display:flex;align-items:center;gap:60px}
.hero-caption>span:last-child>span{font-size:1.5rem;line-height:1}

.intro{display:grid;grid-template-columns:1fr 2.05fr;gap:60px}
.intro>.section-label{margin-top:9px}
.intro h2{font-size:clamp(3rem,5.1vw,6rem)}
.intro-copy{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:47px}
.intro-copy>p{font-size:1.3rem;letter-spacing:-.025em;line-height:1.55}
.intro-copy>div{font-size:1rem;line-height:1.75;color:var(--muted)}
.intro-copy>div p+p{margin-top:15px}
.people-gallery{display:grid;grid-template-columns:1.47fr 1fr;gap:8.4vw;align-items:start;padding-bottom:25px}
.image-wrap{position:relative;overflow:hidden;background:#1c3b4c}
.people-photo-large .image-wrap{aspect-ratio:1.06}
.people-photo-large img{height:100%;object-fit:cover;object-position:51% center}
.people-photo-small{padding-top:155px}
.people-photo-small .image-wrap{aspect-ratio:.77}
.people-photo-small img{height:100%;object-fit:cover;object-position:center 58%}
.people-photo figcaption{font-size:.75rem;display:flex;justify-content:space-between;gap:16px;padding-top:16px}
.people-photo figcaption>span:last-child{font-size:.75rem;white-space:nowrap;color:var(--muted)}
.image-note{position:absolute;bottom:28px;left:28px;font-size:1.5rem;letter-spacing:-.03em;color:white;line-height:1.15;max-width:80%;text-shadow:0 1px 8px #172121}
.why-it-works{display:grid;grid-template-columns:1fr 2.05fr;gap:60px}
.why-it-works>.section-label{margin-top:8px}
.why-body h2{font-size:clamp(2.5rem,4.1vw,4.8rem);max-width:880px}
.reason-list{margin-top:56px}
.reason-list article{border-top:1px solid var(--line);display:grid;grid-template-columns:35px .9fr 1.1fr;align-items:start;gap:22px;padding-block:28px}
.reason-number{font-size:.75rem;padding-top:5px;color:var(--muted)}
.reason-list h3{font-size:1.1875rem;letter-spacing:-.03em;line-height:1.45}
.reason-list p{font-size:1rem;color:var(--muted);line-height:1.65}

/* The comparison reads like a table, not a stack of marketing cards. */
.comparison{background:var(--dark);color:var(--paper)}
.comparison-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:64px}
.comparison-heading .section-label{margin-bottom:33px;color:#c9d1c7}
.comparison-heading>p{max-width:280px;color:#c2cec8;font-size:1rem;line-height:1.65;padding-bottom:7px}
.comparison-tabs{display:flex;align-items:center;gap:12px;border-bottom:1px solid #4b5b52;padding-bottom:22px}
.compare-prefix{font-size:.75rem;letter-spacing:.1em;margin-right:28px;color:#c2cec8}
.comparison-tabs button{display:flex;align-items:center;justify-content:space-between;gap:28px;color:var(--paper);border:1px solid #607164;border-radius:30px;padding:13px 22px;font-size:.875rem;min-height:48px;transition:background .2s,color .2s,border-color .2s}
.comparison-tabs button:hover{border-color:var(--lime)}
.comparison-tabs button[aria-selected=true]{background:var(--lime);color:var(--dark);border-color:var(--lime)}
.comparison-tabs button>span{font-size:1.1rem}
.comparison-table{width:100%;border-collapse:collapse;text-align:left;table-layout:fixed}
.comparison-table th{font-weight:500}
.comparison-table tr>*{padding:26px 32px;vertical-align:top}
.comparison-table tr>:first-child{width:23%;padding-left:0}
.comparison-table tr>:nth-child(2){width:39%;background:rgba(214,235,119,.045);color:#e3f09d}
.comparison-table thead th{font-size:1.125rem;letter-spacing:-.01em;vertical-align:middle;padding-block:38px}
.mini-wordmark{font-family:var(--heading);font-weight:800;letter-spacing:-.095em;font-size:2rem;margin-right:18px;line-height:1}
.comparison-table tbody tr{border-bottom:1px solid #43554b}
.comparison-table tbody th{font-size:.8125rem;color:#b7c5ba}
.comparison-table tbody td{font-size:1rem;line-height:1.6}
.comparison-table tbody td:last-child{color:#d1d9d0}
.comparison-footnote{font-size:.75rem;color:#a7b7aa;margin-top:23px}

.experience{display:grid;grid-template-columns:1fr 1fr;gap:12vw}
.experience-intro .section-label{margin-bottom:35px}
.experience-intro h2{font-size:clamp(2.8rem,4.4vw,5rem)}
.experience-intro>p:not(.section-label){margin-top:30px;max-width:355px;font-size:1rem;color:var(--muted);line-height:1.7}
.experience-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}
.experience-tags span{border:1px solid var(--line);padding:6px 12px;border-radius:30px;font-size:.75rem;letter-spacing:.01em}
.experience-photo{margin-top:55px;width:83%;aspect-ratio:1.6;overflow:hidden}
.experience-photo img{height:100%;object-fit:cover}
.day-plan{padding-top:74px}
.plan-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}
.plan-label>span{font-size:2rem;font-weight:400}
details{border-top:1px solid var(--line)}
summary{list-style:none;cursor:pointer}
summary::-webkit-details-marker{display:none}
.day-plan summary{display:flex;gap:22px;align-items:flex-start;padding-block:29px}
.step-number{font-size:.75rem;color:var(--muted);padding-top:7px;font-variant-numeric:tabular-nums}
.day-plan summary>span:nth-child(2){font-family:var(--heading);font-size:1.45rem;letter-spacing:-.035em;line-height:1.4}
.day-plan summary small{display:block;margin-top:7px;font-family:var(--body);font-size:.75rem;letter-spacing:.08em;color:var(--muted)}
.details-icon{position:relative;width:16px;height:16px;flex-shrink:0;margin-left:auto;margin-top:7px}
.details-icon::before,.details-icon::after{content:'';position:absolute;background:currentColor;inset:7px 0 auto;height:1px;transition:transform .2s}
.details-icon::after{transform:rotate(90deg)}
details[open]>summary .details-icon::after{transform:rotate(0)}
.step-copy{padding:0 24px 29px 40px;font-size:1rem;line-height:1.7;color:var(--muted)}
.step-copy>span{display:block;margin-top:16px;color:var(--ink);font-size:.8125rem}
.day-plan>details:last-of-type{border-bottom:1px solid var(--line)}
.plan-note{font-size:.8125rem;color:var(--muted);line-height:1.6;max-width:350px;margin-top:22px}
.day-plan>.text-link{margin-top:25px}

.moments{background:#edeFE7;padding-bottom:72px;overflow:hidden}
.moments-heading{display:flex;justify-content:space-between;gap:60px;align-items:flex-end;margin-bottom:65px}
.moments-heading .section-label{margin-bottom:35px}
.moments h2{font-size:clamp(3.6rem,6.9vw,7.5rem);line-height:1.03}
.moments-aside p{font-size:1.0625rem;line-height:1.7;margin-bottom:32px}
.moments-aside .eyebrow{font-size:.75rem}
.moments-track{display:flex;align-items:flex-start;gap:24px;overflow-x:auto;padding:0 var(--gutter) 14px;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;scroll-padding-inline:var(--gutter)}
.moments-track::-webkit-scrollbar{display:none}
.moment{padding:0;flex:0 0 27%;min-width:270px;position:relative;overflow:hidden;scroll-snap-align:start;text-align:left;background:#1d3540;color:white}
.moment img{height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.2,.7,.3,1)}
.moment:hover img{transform:scale(1.045)}
.moment::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.35),transparent 30%,transparent 45%,rgba(0,0,0,.65));pointer-events:none}
.moment-reel{aspect-ratio:9/14}
.moment-post{aspect-ratio:4/5;margin-top:68px}
.moment-late{margin-top:26px}
.moment-late img{object-position:54% center}
.moment-type{display:flex;align-items:center;gap:7px;position:absolute;top:23px;left:23px;right:20px;z-index:1;font-size:.75rem;letter-spacing:.07em;line-height:1.3}
.reel-icon,.post-icon{font-size:1.1rem;line-height:1}
.moment-bottom{position:absolute;left:24px;right:24px;bottom:26px;display:flex;align-items:flex-end;justify-content:space-between;gap:10px;z-index:1;font-family:var(--heading);font-size:1.75rem;line-height:1.15;letter-spacing:-.045em}
.moment-open{flex-shrink:0;display:grid;place-items:center;width:37px;height:37px;border:1px solid rgba(255,255,255,.65);border-radius:50%;font-size:1.25rem}
.moment-quote{background:var(--orange);color:var(--ink)}
.moment-quote::after{display:none}
.quote-display{position:absolute;inset:25% 24px auto;font-family:var(--heading);font-size:clamp(3rem,4.5vw,5.5rem);line-height:.96;letter-spacing:-.065em}
.moment-quote .moment-open{border-color:var(--ink)}
.moment-quote .mini-wordmark{font-size:2.5rem}
.moments-footer{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:30px}
.moments-footer p{font-size:.875rem;line-height:1.7}
.moments-footer p>span{color:var(--muted);font-size:.75rem}
.carousel-controls{display:flex;gap:12px;flex-shrink:0}

.faq{display:grid;grid-template-columns:1fr 1.3fr;gap:10vw}
.faq .section-label{margin-bottom:34px}
.faq h2{font-size:clamp(2.8rem,4.4vw,5rem)}
.faq-list{padding-top:5px}
.faq-list details:last-child{border-bottom:1px solid var(--line)}
.faq-list summary{display:flex;align-items:flex-start;gap:24px;padding:25px 0;font-size:1.0625rem;font-weight:500}
.faq-list summary .details-icon{margin-top:5px}
.faq-list details>p{font-size:1rem;color:var(--muted);padding:0 38px 26px 0;line-height:1.75}

.closing{background:var(--orange);padding-block:40px 34px}
.closing-top{display:flex;justify-content:space-between;gap:20px}
.closing-top>span:last-child{display:flex;gap:60px}
.closing-main{display:flex;align-items:center;justify-content:space-between;gap:60px;padding-block:60px 67px}
.closing h2{font-size:clamp(3.3rem,7.35vw,8.5rem);letter-spacing:-.065em;line-height:1.02}
.closing-cta{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;flex-shrink:0;width:175px;height:175px;border:1px solid currentColor;border-radius:50%;transition:background .3s,color .3s,transform .3s}
.closing-cta>span:first-child{font-size:5rem;font-weight:400;line-height:1}
.closing-cta>span:last-child{font-size:1rem}
.closing-cta:hover{background:var(--ink);color:var(--orange);transform:rotate(-6deg)}
.closing-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(23,33,33,.4);padding-top:25px;gap:30px;font-size:1rem}
.closing .text-link:hover{color:var(--ink);opacity:.7}
.closing-bottom .text-link{border-bottom:0;padding:0}
.site-footer{padding-block:46px;display:flex;align-items:center;gap:55px}
.site-footer>.wordmark{font-size:3.8rem}
.site-footer>p{font-size:.75rem;letter-spacing:.04em;line-height:1.6}
.copyright{font-size:.75rem;margin-left:auto;color:var(--muted)}
.back-to-top{display:flex;gap:40px;align-items:center;font-size:.8125rem}
.back-to-top>span{font-size:1.5rem}

/* Native dialogs provide focus containment and Escape-key behaviour. */
dialog{color:var(--ink);background:var(--paper);padding:56px;border:0;max-width:calc(100% - 32px);max-height:calc(100dvh - 40px);overscroll-behavior:contain}
dialog::backdrop{background:rgba(11,27,26,.75);backdrop-filter:blur(6px)}
.dialog-close{position:absolute;right:20px;top:20px;width:36px;height:36px;line-height:1;font-size:1.5rem}
.enquiry-dialog{width:660px}
.enquiry-dialog h2{font-size:3.4rem;line-height:1.05;margin-top:21px;letter-spacing:-.06em}
.dialog-intro{margin-top:20px;font-size:1rem;color:var(--muted)}
#enquiry-form{display:grid;gap:20px;margin-top:32px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
label{display:grid;gap:8px;font-size:.8125rem;font-weight:500}
input,select,textarea{display:block;width:100%;min-width:0;min-height:48px;font-size:1rem;line-height:1.4;border:1px solid #adb6aa;border-radius:0;padding:12px;background:transparent}
textarea{resize:vertical}
input::placeholder,textarea::placeholder{color:#767f74;opacity:1}
.form-submit{margin-top:5px}
.form-note{font-size:.75rem;color:var(--muted);line-height:1.55}
#brief-summary{margin-block:28px;display:grid;grid-template-columns:100px 1fr;gap:10px 20px;font-size:1rem;overflow-wrap:anywhere}
#brief-summary dt{color:var(--muted)}
#brief-summary dd{margin:0;white-space:pre-wrap}
.edit-brief{margin-top:20px;display:flex}
.media-dialog{width:880px;padding:0;overflow:auto}
.media-dialog[open]{display:grid;grid-template-columns:1.1fr 1fr}
.media-dialog .dialog-close{z-index:2;background:var(--paper)}
.media-visual{min-height:560px;background:var(--dark);overflow:hidden}
.media-visual>img{width:100%;height:100%;object-fit:cover}
.media-description{padding:90px 35px 45px;display:flex;flex-direction:column;align-items:flex-start}
.media-description h2{font-size:2.5rem;margin-top:25px}
.media-description>p:not(.eyebrow){font-size:1rem;line-height:1.7;color:var(--muted);margin-top:22px}
.media-note{font-size:.75rem;color:var(--muted);margin-top:auto;padding-top:36px;line-height:1.5}
.media-visual.quote-preview{background:var(--orange);padding:80px 30px;display:grid;place-items:center}
.quote-preview>p{font-family:var(--heading);font-size:4.5rem;font-weight:600;line-height:.95;letter-spacing:-.07em}

@media(min-width:1700px){.section-space{padding-block:155px}.hero-heading{padding-block:75px}.hero-aside{margin-right:3vw}.intro,.why-it-works{grid-template-columns:1fr 2fr}.moment{flex-basis:24%}}
@media(max-width:1150px){
  .header-location{display:none}.site-header{gap:25px;height:96px}.main-nav{gap:21px}.header-cta{margin-left:0}.button{padding-inline:18px}
  h1{font-size:7vw}.hero-aside>p:first-child{font-size:1.1rem}.hero-aside .muted{font-size:.875rem}.hero-aside .text-link{font-size:.8125rem;gap:17px}
  .intro,.why-it-works{grid-template-columns:1fr 2.1fr;gap:30px}.section-label{font-size:.75rem;gap:12px}.intro-copy{gap:30px}.intro-copy>p{font-size:1.15rem}
  .reason-list article{grid-template-columns:26px 1fr;gap:8px 15px}.reason-list p{grid-column:2}.experience{gap:7vw}.comparison-table tr>*{padding-inline:24px}.mini-wordmark{display:block;margin-bottom:10px}
  .closing-cta{width:145px;height:145px}.moment-bottom{font-size:1.4rem}.moment{flex-basis:31%;min-width:245px}.moment-quote .mini-wordmark{margin-bottom:0}.site-footer{gap:35px}
}
@media(max-width:800px){
  .site-header{height:88px;gap:20px}.wordmark{font-size:3rem}.header-cta{margin-left:auto;font-size:.75rem;padding:12px 16px;min-height:46px;gap:15px}
  .menu-toggle{display:flex;width:36px;height:44px;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:7px}
  .menu-toggle span{display:block;background:var(--ink);width:22px;height:1px;transition:transform .2s}
  .menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
  .main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:24px var(--gutter) 32px;border-bottom:1px solid var(--line)}
  .main-nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:5px;font-size:1.35rem}.main-nav a{border-bottom:1px solid var(--line);padding-block:15px}.main-nav a::after{display:none}
  .section-space{padding-block:88px}.hero-heading{padding-top:42px;padding-bottom:42px;display:block}.hero-heading .eyebrow{margin-bottom:25px}h1{font-size:clamp(3.35rem,10.7vw,5.6rem)}
  .hero-aside{margin-top:30px;display:flex;align-items:flex-end;justify-content:space-between;gap:30px}.hero-aside>p:first-child{display:none}.hero-aside .muted{font-size:1rem}.hero-aside .text-link{font-size:.8125rem;white-space:nowrap;margin-top:0}.hero-photo{height:530px}.hero-photo>img{object-position:55% center}.hero-photo-bottom{bottom:40px}.photo-topline{font-size:.75rem}.round-link{width:70px;height:70px;font-size:2rem}
  .intro,.why-it-works{grid-template-columns:1fr;gap:33px}.intro h2{font-size:clamp(2.8rem,7.7vw,4.5rem)}.intro-copy{margin-top:32px;gap:40px}.intro-copy>p{font-size:1.3rem}.intro-copy>div{font-size:1rem}
  .people-gallery{gap:30px;grid-template-columns:1.2fr 1fr}.people-photo-small{padding-top:85px}.image-note{left:20px;bottom:20px;font-size:1.15rem}.people-photo figcaption{font-size:.75rem;line-height:1.5}.people-photo figcaption>span:last-child{display:none}
  .why-body h2{font-size:clamp(2.5rem,6.5vw,3.8rem)}.reason-list article{grid-template-columns:28px .85fr 1.15fr;gap:20px}.reason-list p{grid-column:auto}.reason-list h3{font-size:1.15rem}
  .comparison-heading{margin-bottom:43px;gap:35px}.comparison-heading h2{font-size:3rem}.comparison-heading>p{font-size:.875rem;max-width:200px}.comparison-heading .section-label{font-size:.75rem}.comparison-tabs{gap:8px}.compare-prefix{display:none}.comparison-tabs button{flex:1;gap:13px;padding:11px 17px;font-size:.8125rem}.comparison-table tr>*{padding:22px 18px}.comparison-table tr>:first-child{width:21%}.comparison-table tbody td{font-size:.875rem}.comparison-table tbody th{font-size:.75rem}.comparison-table thead th{font-size:1rem}
  .experience{gap:50px;grid-template-columns:1fr 1fr}.experience-intro h2{font-size:2.5rem}.experience-photo{width:100%}.day-plan{padding-top:61px}.day-plan summary{gap:13px;padding-block:25px}.day-plan summary>span:nth-child(2){font-size:1.2rem}.step-copy{padding-left:28px;padding-right:0;font-size:.875rem}.step-number{font-size:.75rem}.plan-label{font-size:.75rem}.day-plan summary small{font-size:.75rem}.experience-tags span{font-size:.75rem}
  .moments-heading{gap:30px}.moments-aside p{font-size:1rem}.moments-aside .eyebrow{font-size:.75rem}.moments h2{font-size:4rem}.moment{flex-basis:41%;min-width:250px}.quote-display{font-size:3.4rem}.moments-footer{margin-top:22px}
  .faq{gap:42px;grid-template-columns:1fr 1.2fr}.faq h2{font-size:2.5rem}.faq-list summary{font-size:1rem}.faq-list details>p{font-size:.875rem;padding-right:16px}
  .closing-main{gap:30px;padding-block:55px}.closing h2{font-size:6.9vw}.closing-cta{width:120px;height:120px}.closing-cta>span:first-child{font-size:3.5rem}.closing-cta>span:last-child{font-size:.8125rem}.closing-top .eyebrow{font-size:.75rem}.closing-bottom{font-size:.8125rem}.closing-bottom .text-link{font-size:.8125rem}
  .site-footer{flex-wrap:wrap;gap:30px;justify-content:space-between}.site-footer>p{margin-right:auto}.copyright{margin-left:0}.back-to-top{gap:20px}.site-footer>.wordmark{font-size:3.1rem}
}
@media(max-width:540px){
  :root{--gutter:22px}.site-header{height:80px;gap:14px}.wordmark{font-size:2.75rem}.header-cta{font-size:.75rem;gap:12px;padding-inline:13px;min-height:42px}.header-cta span{font-size:1.2rem}.menu-toggle{width:29px;padding:3px}
  .hero-heading{padding-block:35px}.hero-heading .eyebrow{font-size:.75rem;letter-spacing:.065em;margin-bottom:25px}h1{font-size:10.4vw;line-height:1.08;letter-spacing:-.065em}.hero-aside{display:block;margin-top:25px}.hero-aside .muted{font-size:.875rem}.hero-aside .muted br{display:none}.hero-aside .text-link{font-size:.8125rem;margin-top:9px;gap:35px}.hero-photo{height:440px}.hero-photo>img{object-position:55% center}.photo-topline{top:20px;font-size:.75rem;letter-spacing:.03em}.photo-topline>span:last-child{display:none}.hero-photo-bottom{bottom:39px}.hero-photo-bottom p{font-size:1.8rem}.round-link{width:58px;height:58px;font-size:1.9rem}.photo-credit{font-size:.75rem}.hero-caption{padding-block:17px;gap:12px;font-size:.75rem}.hero-caption>span:last-child{font-size:.75rem;max-width:91px;gap:14px}
  .section-space{padding-block:72px}.section-label{font-size:.75rem}.intro{gap:28px}.intro h2{font-size:2.75rem}.intro-copy{grid-template-columns:1fr;gap:21px;margin-top:30px}.intro-copy>p{font-size:1.2rem;max-width:380px}.intro-copy>div{font-size:1rem}.people-gallery{grid-template-columns:1fr;gap:32px;padding-bottom:0}.people-photo-large .image-wrap{aspect-ratio:1.12}.people-photo-small{padding-top:0;width:78%;margin-left:auto}.people-photo-small .image-wrap{aspect-ratio:.78}.people-photo figcaption{font-size:.75rem}.image-note{font-size:1.4rem}.why-it-works{gap:27px}.why-body h2{font-size:2.55rem}.reason-list{margin-top:35px}.reason-list article{grid-template-columns:25px 1fr;gap:8px 12px;padding-block:24px}.reason-list p{grid-column:2}.reason-list h3{font-size:1.125rem}.reason-list p{font-size:1rem}
  .comparison-heading{display:block;margin-bottom:30px}.comparison-heading h2{font-size:2.9rem}.comparison-heading .section-label{margin-bottom:28px;font-size:.75rem}.comparison-heading>p{font-size:1rem;max-width:290px;margin-top:24px}.comparison-tabs{gap:7px;flex-wrap:wrap;padding-bottom:23px}.comparison-tabs button{padding:10px 13px;font-size:.75rem;gap:8px;flex:1 1 auto;min-height:43px}.comparison-tabs button>span{display:none}.comparison-table tr>*{padding:20px 13px}.comparison-table tr>:first-child{width:23%;font-size:.75rem}.comparison-table tr>:nth-child(2){width:40%}.comparison-table thead th{font-size:.8125rem;line-height:1.5;padding-block:22px}.mini-wordmark{font-size:1.7rem;margin-bottom:9px}.comparison-table tbody td{font-size:.875rem;line-height:1.6;overflow-wrap:anywhere}.comparison-footnote{font-size:.75rem;line-height:1.7}
  .experience{grid-template-columns:1fr;gap:45px}.experience-intro .section-label{margin-bottom:28px}.experience-intro h2{font-size:3rem}.experience-intro>p:not(.section-label){margin-top:25px;font-size:1rem}.experience-photo{margin-top:32px;width:84%;aspect-ratio:1.6}.experience-tags span{font-size:.75rem}.day-plan{padding-top:0}.plan-label{font-size:.75rem}.day-plan summary{padding-block:26px;gap:20px}.day-plan summary>span:nth-child(2){font-size:1.35rem}.day-plan summary small{font-size:.75rem}.step-copy{padding-left:35px;font-size:1rem}.plan-note{font-size:.8125rem}
  .moments-heading{display:block;margin-bottom:35px}.moments-heading .section-label{margin-bottom:28px}.moments h2{font-size:3.8rem}.moments-aside p{margin-top:25px;margin-bottom:18px;font-size:1rem}.moments-aside p br{display:none}.moments-track{gap:16px}.moment{flex-basis:72%;min-width:230px}.moment-type{top:18px;left:18px;font-size:.75rem}.moment-bottom{left:18px;right:18px;bottom:21px;font-size:1.4rem}.moment-post{margin-top:45px}.moment-late{margin-top:17px}.moment-quote .quote-display{inset:26% 20px auto;font-size:3.7rem}.moments-footer{gap:20px;align-items:flex-start}.moments-footer p{font-size:.8125rem}.moments-footer p>span{font-size:.75rem}.carousel-controls{gap:8px}.circle-button{width:40px;height:40px;font-size:1.25rem}
  .faq{grid-template-columns:1fr;gap:35px}.faq h2{font-size:2.8rem}.faq .section-label{margin-bottom:27px}.faq-list summary{font-size:1rem;padding-block:23px}.faq-list details>p{font-size:1rem}
  .closing{padding-block:28px}.closing-top .eyebrow{font-size:.75rem}.closing-top>span:last-child{gap:14px}.closing-main{display:block;padding-block:42px 28px;position:relative}.closing h2{font-size:10.1vw;line-height:1.08}.closing-cta{margin-top:28px;margin-left:auto;width:86px;height:86px;gap:2px}.closing-cta>span:first-child{font-size:2.6rem}.closing-cta>span:last-child{font-size:.75rem}.closing-bottom{align-items:flex-start;gap:20px;font-size:.75rem}.closing-bottom>p{max-width:145px}.closing-bottom .text-link{font-size:.75rem;gap:10px;align-items:flex-start}.closing-bottom .text-link>span{font-size:1.3rem}.site-footer{padding-block:32px;gap:22px}.site-footer>.wordmark{width:95px}.site-footer>p{font-size:.75rem;margin-right:0}.copyright{width:45%;font-size:.75rem}.back-to-top{font-size:.75rem}
  dialog{padding:58px 25px 30px;max-height:calc(100dvh - 24px);max-width:calc(100% - 24px)}.dialog-close{right:14px;top:14px}.enquiry-dialog h2{font-size:2.8rem}.form-row{grid-template-columns:1fr;gap:20px}#enquiry-form{gap:20px}.enquiry-dialog .eyebrow{font-size:.75rem}#brief-summary{grid-template-columns:76px 1fr;gap:12px;font-size:.875rem}.media-dialog[open]{display:block}.media-visual{height:350px;min-height:0}.media-description{padding:32px 25px}.media-description h2{font-size:2.4rem;margin-top:15px}.media-note{padding-top:24px}.media-visual.quote-preview{padding:45px 30px}.quote-preview>p{font-size:3.8rem}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(forced-colors:active){.button,.moment,.comparison-tabs button{border:1px solid ButtonText}.hero-photo-bottom,.photo-topline,.moment-type,.moment-bottom{forced-color-adjust:none}.details-icon::before,.details-icon::after{background:ButtonText}}
