@font-face{font-family:Ubuntu;src:url('/assets/fonts/ubuntu-latin.woff2') format('woff2');font-style:normal;font-weight:300 700;font-display:swap}
:root{
  --ink:#183b43;--text:#21434b;--muted:#4f6b72;
  --dark:#183b43;--dark-2:#21505a;--coral:#fa6b40;--rust:#bd492c;
  --sage:#e6ece0;--sand:#f4ede2;--soft:#edf2f2;--paper:#ffffff;
  --s-small:15px;--s-body:18px;--s-lead:22px;--s-h3:30px;--s-h2:clamp(40px,4.3vw,62px);--s-h1:clamp(48px,5.6vw,80px);
  --gap-section:clamp(96px,11vw,168px);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;background:var(--paper);color:var(--text);font:var(--s-body)/1.6 Ubuntu,Arial,sans-serif;-webkit-font-smoothing:antialiased}
h1,h2,h3,p,figure,dl,dd,ul{margin:0}
ul{padding:0;list-style:none}
h1,h2,h3{color:var(--ink);font-weight:700;letter-spacing:-.035em;line-height:1.04}
h1{font-size:var(--s-h1)}h2{font-size:var(--s-h2)}h3{font-size:var(--s-h3);line-height:1.15;letter-spacing:-.03em}
em{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--rust);letter-spacing:-.04em}
i{font-family:Georgia,serif}
a{color:inherit}
button,input,textarea{font:inherit}
button{cursor:pointer}
img{max-width:100%;display:block;object-fit:cover}
svg{display:block}
:focus-visible{outline:3px solid var(--rust);outline-offset:4px}
::selection{background:#f8cbb7;color:var(--ink)}
[hidden]{display:none!important}
.wrap{width:min(1280px,calc(100% - 80px));margin-inline:auto}
.skip{position:absolute;top:10px;left:15px;background:var(--sand);color:var(--ink);padding:10px 20px;z-index:10;clip-path:inset(50%)}.skip:focus{clip-path:none}
.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;background:var(--coral);color:#15343c;border:0;border-radius:4px;min-height:60px;padding:16px 26px;font-weight:700;font-size:var(--s-body);text-decoration:none;line-height:1.3;transition:transform .18s ease,background-color .18s ease}
.button:hover{transform:translateY(-3px);background:#ff7a51}.button:active{transform:translateY(1px)}
.button:disabled{opacity:.6;cursor:not-allowed;transform:none}
.text-link{display:inline-flex;align-items:center;gap:12px;text-underline-offset:6px;text-decoration-thickness:2px;font-weight:500;transition:color .18s}
.text-link:hover{color:var(--rust)}
.lead,.feature-lead{font-size:var(--s-lead);line-height:1.5;color:var(--ink)}
.small-note,figcaption{font-size:var(--s-small);line-height:1.5;color:var(--muted)}
figcaption{margin-top:16px}

/* Header */
.header{background:var(--paper)}
.navigation{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:96px}
.brand{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;color:var(--ink);text-decoration:none}
.brand-up{display:inline-grid;place-items:center;background:var(--coral);color:var(--ink);width:40px;height:40px;border-radius:4px;font-size:var(--s-body);font-weight:700;letter-spacing:-.04em}
.brand-amp{font-size:var(--s-lead);font-weight:500}.brand-name{font-size:var(--s-body);font-weight:700;letter-spacing:-.03em}
.desktop-nav{display:flex;align-items:center;gap:32px;font-size:var(--s-small);font-weight:500}
.desktop-nav>a{text-decoration:none}.desktop-nav>a:not(.nav-action):hover{text-decoration:underline;text-underline-offset:6px}
.nav-action{background:var(--dark);color:#fff;padding:12px 18px;border-radius:4px;display:flex;gap:16px;transition:background-color .18s}.nav-action:hover{background:var(--dark-2)}
.mobile-nav{display:none}

/* Hero */
.hero{padding:40px 0 0;background:var(--paper)}
.hero-layout{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:64px;align-items:center;padding-bottom:88px}
.hero h1{margin-bottom:28px}
.hero h1 em{white-space:nowrap}
.hero .lead{max-width:30ch}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px 30px;margin-top:36px}
.hero-price{margin-top:30px;font-size:var(--s-body);font-weight:500;color:var(--ink)}
.hero-works-for{margin-top:10px;max-width:34em;font-size:var(--s-small);line-height:1.5;color:var(--muted)}
.hero-visual{position:relative;padding-bottom:56px}
.desktop-frame{background:#fbf9f3;border-radius:8px;overflow:hidden;box-shadow:0 30px 60px -28px rgba(24,59,67,.38);margin-left:56px} /* taste-skill-ignore: floating illustration (data-ui) */
.frame-bar{background:#e9edea;padding:10px 16px}
.frame-address{display:block;width:44%;margin-inline:auto;background:#fff;border-radius:20px;text-align:center;font-size:13px;color:var(--muted);padding:3px 0}
.studio-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--sage);color:#35574b;padding:16px 22px;font-size:13px;line-height:1.3}
.studio-name{font:26px/1 Georgia,serif;letter-spacing:-.03em;color:#2d4c42}
.studio-pill{background:#2c5349;color:#fff;padding:7px 12px;border-radius:2px}
.frame-hero{position:relative;height:430px;overflow:hidden}
.frame-hero img{width:100%;height:100%;object-position:40% 55%}
.frame-card{position:absolute;right:28px;top:50%;transform:translateY(-50%);width:44%;background:#f8f5ec;padding:30px 28px;color:#365749}
.frame-card p{font:40px/1.04 Georgia,serif;letter-spacing:-.04em;color:#2d4c42}
.frame-card>span:not(.studio-cta){display:block;font-size:var(--s-small);margin-top:16px;line-height:1.5}
.studio-cta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:22px;background:#2c5349;color:#fff;font-size:13px;padding:11px 14px}
.phone-frame{position:absolute;left:0;bottom:0;width:200px;background:#fbf9f3;border:8px solid #1d2f33;border-radius:30px;overflow:hidden;box-shadow:0 26px 50px -20px rgba(24,59,67,.5)} /* taste-skill-ignore: floating illustration (data-ui) */
.phone-frame img{height:150px;width:100%}
.phone-body{padding:14px 14px 16px;color:#365749}
.phone-label{font-size:12px;color:var(--muted)}
.phone-body p{font:22px/1.1 Georgia,serif;letter-spacing:-.03em;color:#2d4c42;margin:4px 0 12px}
.phone-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}
.phone-slots span{background:#fff;font-size:12px;text-align:center;padding:6px 0}
.phone-slots .on{background:var(--sage);font-weight:700}
.phone-book{display:block;margin-top:10px;background:#2c5349;color:#fff;font-size:12px;text-align:center;padding:9px 6px}
.hero-visual figcaption{text-align:right;margin-top:14px}
.real-desktop{background:transparent}
.hero-visual:has(.real-desktop){padding-bottom:145px}
.phone-frame.real-phone{width:170px}
.real-desktop img{width:100%;height:auto;object-fit:contain}
.phone-frame.real-phone img{width:100%;height:auto;object-fit:contain}
.drift{animation:drift 22s ease-in-out infinite alternate;transform-origin:50% 50%}
@keyframes drift{from{transform:scale(1)}to{transform:scale(1.08) translate(-1.5%,1%)}}

/* Parts strip */
.parts-strip{background:var(--dark);color:#fff}
.parts-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0}
.parts-row a{display:flex;flex-direction:column;gap:6px;padding:28px 22px 30px;text-decoration:none;transition:background-color .2s}
.parts-row a:first-child{padding-left:0}
.parts-row a strong{font-size:var(--s-body);line-height:1.3}
.parts-row a span{font-size:var(--s-small);color:#c8d8da;line-height:1.45}
.parts-row a:hover{background:var(--dark-2)}
.parts-row a:first-child:hover{background:transparent}
.parts-row a:first-child:hover strong,.parts-row .parts-care strong{color:#ffc1a8}
.parts-care{background:var(--dark-2)}

/* Chapters */
.chapter{padding-block:var(--gap-section)}
.chapter-website{background:var(--sage)}
.chapter-search{background:var(--paper)}
.chapter-booking{background:var(--sand)}
.chapter-reporting{background:var(--dark);color:#e3eced}
.included-intro{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:end;margin-bottom:112px}
.included-intro p{font-size:var(--s-lead);line-height:1.5;color:var(--ink);max-width:40ch}
.feature{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:88px;align-items:center}
.feature-flip{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
.feature-copy h2,.feature-copy h3{margin-bottom:26px}
.feature-copy h3{font-size:var(--s-h2);letter-spacing:-.035em;line-height:1.04}
.feature-lead{max-width:34ch}
.check-list{margin-top:30px;display:grid;gap:14px}
.check-list li{position:relative;padding-left:34px;font-size:var(--s-body);line-height:1.45;color:var(--ink)}
.check-list li::before{content:'';position:absolute;left:2px;top:5px;width:16px;height:9px;border-left:3px solid var(--rust);border-bottom:3px solid var(--rust);transform:rotate(-45deg)}
.feature-note{margin-top:28px;font-weight:700;color:var(--ink)}
.chapter-reporting h2,.chapter-reporting .feature-lead,.chapter-reporting .check-list li{color:#fff}
.chapter-reporting .check-list li::before{border-color:#ff8f6b}
.chapter-reporting .small-note,.chapter-reporting figcaption{color:#b9cdd0}
.chapter-reporting .small-note{margin-top:28px}

/* Website examples */
.switcher{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:12px}
.switcher button{border:0;background:rgba(255,255,255,.6);color:var(--ink);padding:12px 10px;font-size:var(--s-small);border-radius:3px;transition:background-color .18s}
.switcher button:hover{background:#fff}
.switcher button[aria-pressed=true]{background:var(--dark);color:#fff}
.site-preview{background:#fbf9f3;border-radius:6px;overflow:hidden;box-shadow:0 30px 60px -32px rgba(24,59,67,.35)} /* taste-skill-ignore: floating illustration (data-ui) */
.visit-feature{display:grid;grid-template-columns:1.05fr 1fr;min-height:400px}
.visit-feature img{height:100%;width:100%}
.visit-feature>div{padding:36px 28px;display:flex;flex-direction:column;justify-content:center;color:#365749;font-size:var(--s-small)}
.visit-feature p{font:36px/1.08 Georgia,serif;letter-spacing:-.04em;color:#2d4c42;margin:12px 0 16px}
.visit-strip{display:flex;align-items:center;gap:18px;background:#e9eddf;padding:16px 22px;color:#365749;font-size:var(--s-small)}
.visit-strip img{width:90px;height:62px}
.visit-strip strong{display:block;font:22px Georgia,serif;font-weight:400;color:#2d4c42}
.visit-strip>span{margin-left:auto;font-size:var(--s-lead)}
.screenshot-preview img{width:100%;aspect-ratio:3/2;object-position:top}
.screenshot-preview img{aspect-ratio:1.44;object-fit:contain;height:auto}
.example-controls{grid-template-columns:repeat(4,minmax(0,1fr))}
.example-controls button{min-height:46px}
.example-playback{display:block;margin:12px 0 0 auto;border:0;background:none;padding:6px 0;font-size:var(--s-small);color:var(--muted);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.example-playback[hidden]{display:none}
.booking-example{position:relative}
.booking-page-shot{overflow:hidden;border-radius:4px;box-shadow:0 24px 50px -30px #17343c66} /* taste-skill-ignore: actual screenshot displayed as a floating page */
.booking-page-shot img{width:100%;height:auto}
.booking-form-shot{width:58%;margin:-80px 20px 0 auto;position:relative;background:#fafbf7;padding:20px;box-shadow:0 24px 50px -25px #17343c66} /* taste-skill-ignore: magnified actual form screenshot floats over the page */
.booking-form-shot img{width:100%;height:auto}

/* Google profile */
.search-example{max-width:680px}
.search-query{display:flex;align-items:center;gap:14px;background:#fff;border-radius:30px;padding:16px 24px;font-size:var(--s-body);color:var(--ink);box-shadow:0 10px 30px -18px rgba(24,59,67,.5);margin-bottom:16px} /* taste-skill-ignore: floating illustration (data-ui) */
.search-query svg{width:22px;height:22px;stroke:var(--muted);fill:none;stroke-width:2}
.profile-example{background:var(--soft);border-radius:8px;padding:26px}
.profile-top{display:flex;gap:20px;align-items:center;margin-bottom:20px}
.profile-top img{width:120px;height:96px;border-radius:4px}
.profile-name{font-size:var(--s-h3);font-weight:700;color:var(--ink);letter-spacing:-.03em;line-height:1.1}
.profile-top p:not(.profile-name){font-size:var(--s-small);color:var(--text)}
.profile-open{font-size:13px;color:#2f7a55;font-weight:500}
.profile-details{background:#fff;border-radius:6px;padding:6px 20px}
.profile-details>div{display:grid;grid-template-columns:90px 1fr auto;gap:14px;align-items:center;padding:14px 0;font-size:var(--s-small)}
.profile-details>div+div{border-top:1px solid #e3eaea} /* taste-skill-ignore: interface fragment */
.profile-details dt{color:var(--muted)}.profile-details dd{color:var(--ink)}
.profile-details>div>span{font-size:13px;background:var(--sage);color:#2d5a45;padding:3px 9px;border-radius:3px}
.profile-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.profile-actions>span{background:#fff;padding:9px 14px;font-size:var(--s-small);border-radius:3px;color:var(--ink)}
.profile-actions .on{background:#2c5349;color:#fff;margin-left:auto}

/* Booking */
.booking-surface{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 30px 60px -32px rgba(60,45,20,.35)} /* taste-skill-ignore: floating illustration (data-ui) */
.booking-content{padding:28px}
.booking-title{font:34px/1.1 Georgia,serif;letter-spacing:-.03em;color:#2d4c42;margin:6px 0 20px}
.booking-modes button{background:var(--soft)}
.booking-modes button[aria-pressed=true]{background:#2c5349}
.service-choice{display:flex;align-items:center;gap:18px;background:#f4f1e8;padding:14px;margin-bottom:22px}
.service-choice img{width:84px;height:70px}
.service-choice strong{display:block;color:var(--ink)}
.service-choice span{font-size:var(--s-small);color:var(--muted)}
.check-icon{width:26px;height:26px;margin-left:auto;stroke:#2f7a55;fill:none;stroke-width:1.8}
.field-title{font-size:var(--s-small);font-weight:500;color:var(--ink);margin-bottom:10px}
.time-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.time-options button{background:#fff;border:1px solid #cfd9d6;padding:14px 0;border-radius:3px;color:var(--ink);transition:background-color .18s,transform .18s} /* taste-skill-ignore: interface fragment */
.time-options button:hover{transform:translateY(-2px)}
.time-options button[aria-pressed=true]{background:var(--sage);border-color:#6f8f7e;font-weight:700}
.studio-book-button{display:flex;justify-content:center;gap:12px;width:100%;margin-top:18px;background:#2c5349;color:#fff;border:0;padding:17px;font-size:var(--s-body);transition:background-color .18s}
.studio-book-button:hover{background:#244540}
.booking-feedback{margin-top:14px;font-size:var(--s-small);background:var(--sage);padding:12px 14px;color:var(--ink)}
.enquiry-intro{font-size:var(--s-small);margin-bottom:16px}
.example-field{background:#f4f1e8;padding:14px 16px;margin-bottom:10px;font-size:var(--s-small)}
.example-field span{display:block;color:var(--muted)}.example-field strong,.example-field p{color:var(--ink)}

/* Reporting */
.reporting-window{background:#fff;border-radius:8px;overflow:hidden;color:var(--text)}
.app-top{display:flex;justify-content:space-between;background:#0f2a30;color:#fff;padding:14px 22px;font-size:13px}
.app-top b{background:var(--coral);color:var(--ink);padding:1px 5px;border-radius:2px}
.reporting-body{padding:28px}
.report-title{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:24px}
.report-title p{font-size:var(--s-lead);font-weight:700;color:var(--ink);letter-spacing:-.02em}
.report-title span{font-size:13px;color:var(--muted)}
.report-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:28px}
.report-stats div{background:var(--soft);padding:16px 18px;border-radius:4px}
.report-stats span{display:block;font-size:13px;color:var(--muted)}
.report-stats strong{font-size:44px;font-weight:500;color:var(--ink);letter-spacing:-.03em;line-height:1.1}
.report-label{font-size:var(--s-small);font-weight:700;color:var(--ink);margin-bottom:10px}
.source-row{margin-bottom:12px}
.source-row>div{display:flex;justify-content:space-between;font-size:var(--s-small)}
.source-track{display:block;height:8px;background:#e7eeee;border-radius:4px;margin-top:6px;overflow:hidden}
.source-track span{display:block;height:100%;width:var(--bar);background:#5f8b80;border-radius:4px}
.source-row:nth-of-type(2) .source-track span{background:#d99a72}
.report-highlight{background:var(--sand);padding:16px 18px;margin-top:20px;font-size:var(--s-small)}
.report-highlight strong{color:var(--ink)}

/* Launch statement */
.launch{padding-block:var(--gap-section);background:var(--paper)}
.launch-layout{display:grid;gap:64px;align-items:start}
.launch h2{font-size:var(--s-h2)}
.launch-lead{margin-top:22px;font-size:var(--s-lead);color:var(--ink)}
.launch-checks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px 40px;background:var(--soft);padding:44px 44px 48px;border-radius:6px}
.launch-checks li{display:grid;gap:8px}
.launch-checks strong{font-size:var(--s-lead);color:var(--ink);letter-spacing:-.02em}
.launch-checks strong{position:relative;padding-left:34px;display:block}.launch-checks strong::before{content:'';position:absolute;left:2px;top:7px;width:16px;height:9px;border-left:3px solid var(--rust);border-bottom:3px solid var(--rust);transform:rotate(-45deg)}
.launch-checks span{color:var(--ink);padding-left:34px}
.launch-button{justify-self:start}

/* Care */
.care{background:var(--dark);color:#e3eced;padding-block:var(--gap-section)}
.care-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:48px 96px;align-items:center}
.care h2{color:#fff;font-size:var(--s-h2);margin-bottom:30px}
.care h2 em{color:#ff9a78;display:block}
.care .feature-lead{color:#fff}
.care-copy>p:last-child{margin-top:18px;color:#cfdedf}
.care-message{display:grid;gap:14px}
.bubble{padding:20px 24px;border-radius:6px;max-width:88%}
.bubble span{display:block;font-size:13px;margin-bottom:4px;opacity:.75}
.bubble p{font-size:var(--s-body);line-height:1.5}
.bubble-you{background:#fde0d4;color:var(--ink);justify-self:end}
.bubble-us{background:#fff;color:var(--ink)}
.care-message figcaption{color:#b9cdd0}
.care-app{grid-column:1/-1;display:flex;align-items:center;gap:24px;background:var(--dark-2);padding:24px 28px;border-radius:4px}
.app-mark{flex:none;display:grid;place-items:center;width:52px;height:52px;background:var(--coral);color:var(--ink);font-weight:700;border-radius:4px}
.care-app p{color:#fff}
.care-app strong{color:#fff}
.care-app .text-link{margin-left:auto;white-space:nowrap;color:#fff}
.care-app .text-link:hover{color:#ff9a78}

/* Package */
.package{background:var(--soft);padding-block:var(--gap-section)}
.package-head{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:end;margin-bottom:72px}
.package-head p{font-size:var(--s-lead);color:var(--ink);max-width:36ch}
.package-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:start}
.summary{background:#fff;border-radius:6px;padding:44px 44px 40px}
.summary-group+.summary-group{margin-top:36px}
.summary-group h3{font-size:var(--s-lead);letter-spacing:-.02em;margin-bottom:14px}
.summary-group li{position:relative;padding:10px 0 10px 32px;color:var(--ink)}
.summary-group li::before{content:'';position:absolute;left:2px;top:17px;width:14px;height:8px;border-left:3px solid var(--rust);border-bottom:3px solid var(--rust);transform:rotate(-45deg)}
.summary-total{margin-top:48px;background:var(--sand);margin-inline:-44px;margin-bottom:-40px;padding:40px 44px 34px;border-radius:0 0 6px 6px}
.totals{width:100%;border-collapse:collapse}.totals th{text-align:left;font-weight:400;color:var(--ink);padding:6px 0;vertical-align:baseline}.totals td{text-align:right;color:var(--ink);padding:6px 0;vertical-align:baseline}
.totals s{color:var(--muted)}
.total-main th{font-size:var(--s-lead);font-weight:700}
.total-main strong{font-size:var(--s-h2);font-weight:700;letter-spacing:-.04em;line-height:1}
.total-month strong{font-size:var(--s-h3);letter-spacing:-.03em}
.total-month small{font-size:var(--s-body);font-weight:500;margin-left:2px}
.price-note{margin-top:14px;font-size:var(--s-small);color:var(--muted)}
.package-enquiry{background:var(--paper);border-radius:6px;padding:44px}
.enquiry-introduction h3{font-size:var(--s-h3);margin-bottom:12px}
.enquiry-introduction>p{color:var(--ink)}
.your-contact{display:flex;align-items:center;gap:16px;margin:22px 0 30px}
.your-contact img{width:60px;height:60px;border-radius:50%}
.your-contact p{font-size:var(--s-small);color:var(--text)}
.your-contact strong{color:var(--ink)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 16px;margin-bottom:24px}
.field-wide{grid-column:1/-1}
.field label{display:block;font-size:var(--s-small);font-weight:500;color:var(--ink);margin-bottom:6px}
.field label span{font-weight:400;color:var(--muted)}
.field input,.field textarea{width:100%;border:1px solid #bfcfd1;border-radius:4px;padding:13px 14px;background:#fff;color:var(--ink);transition:border-color .18s}
.field input:focus,.field textarea:focus{border-color:var(--ink);outline:2px solid #f8cbb7;outline-offset:0}
.form-note{margin-top:16px;font-size:var(--s-small);color:var(--muted)}
.preview-feedback{margin-top:12px;background:var(--sage);padding:12px 14px;font-size:var(--s-small);color:var(--ink)}
.package-questions{display:grid;grid-template-columns:.8fr 1.2fr;gap:72px;margin-top:112px;align-items:start}
.package-questions h3{font-size:var(--s-h3)}
.question-list{display:grid;gap:8px}
.question-list details{background:#fff;border-radius:4px}
.question-list summary{display:flex;justify-content:space-between;gap:16px;padding:20px 24px;font-size:var(--s-body);font-weight:500;color:var(--ink);cursor:pointer;list-style:none}
.question-list summary::-webkit-details-marker{display:none}
.question-list summary span{color:var(--rust);font-size:var(--s-lead);line-height:1;transition:transform .2s}
.question-list details[open] summary span{transform:rotate(45deg)}
.question-list details p{padding:0 24px 22px;color:var(--ink)}

/* Marketing */
.marketing{background:var(--sand);padding-block:var(--gap-section)}
.marketing-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px 88px;align-items:center}
.marketing-photo{overflow:hidden}
.marketing-photo img{width:100%;height:auto;aspect-ratio:1/1;object-position:62% 60%}
.marketing-screenshot img{aspect-ratio:1.44;object-fit:contain;object-position:top}
.marketing-copy h2{margin-bottom:24px}
.goals{margin-top:44px;display:grid;gap:28px}
.goals dt{font-size:var(--s-h3);font-weight:700;color:var(--ink);letter-spacing:-.03em;line-height:1.15}
.goals dd{margin-top:8px;color:var(--ink);max-width:44ch}
.marketing-services{grid-column:1/-1;background:#fffaf2;padding:44px 44px 40px;border-radius:6px}
.marketing-services h3{font-size:var(--s-lead);letter-spacing:-.02em;margin-bottom:18px}
.service-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 32px}
.service-list li{position:relative;padding-left:18px;color:var(--ink)}
.service-list li::before{content:'';position:absolute;left:0;top:11px;width:7px;height:7px;background:var(--rust);border-radius:50%}
.service-example{margin-top:22px;color:var(--ink)}
.marketing-services .small-note{margin-top:16px}

/* Footer */
.footer{background:var(--dark);color:#cfdedf;padding:96px 0 40px}
.footer-mark{display:flex;align-items:center;gap:18px;font-size:var(--s-h1);font-weight:700;letter-spacing:-.05em;color:#fff;line-height:1}
.footer-mark .brand-up{width:auto;height:1.12em;padding:0 .14em;font-size:1em;border-radius:6px}
.footer-row{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;margin:40px 0 28px}
.footer-row nav{display:flex;gap:28px;font-size:var(--s-small)}
.footer-row nav a{text-decoration:none}.footer-row nav a:hover{text-decoration:underline;text-underline-offset:5px}
.footer small{font-size:13px;color:#9fb6ba}

/* Entrances: content stays visible without JS. */
.reveal-ready>*{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.reveal-ready.is-visible>*{opacity:1;transform:none}
.reveal-ready.is-visible>*:nth-child(2){transition-delay:.08s}
.reveal-ready.is-visible>*:nth-child(3){transition-delay:.16s}
.reveal-ready.is-visible>*:nth-child(4){transition-delay:.24s}
.reveal-ready.is-visible>*:nth-child(5){transition-delay:.32s}
.reveal-ready.is-visible>*:nth-child(n+6){transition-delay:.4s}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .drift{animation:none}
  .reveal-ready>*{opacity:1;transform:none;transition:none}
  .button,.time-options button{transition:none}
}

/* Tablet */
@media (max-width:1080px){
  .wrap{width:calc(100% - 64px)}
  .hero-layout{grid-template-columns:1fr;gap:56px}
  .hero .lead{max-width:40ch}
  .parts-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .parts-row a,.parts-row a:first-child{padding:20px 20px 22px 0}
  .parts-care{padding-left:20px!important;grid-column:1/-1}
  .feature,.feature-flip{grid-template-columns:1fr;gap:56px}
  .feature-flip .feature-copy{order:-1}
  .included-intro,.package-head,.package-questions{grid-template-columns:1fr;gap:24px}
  .launch-layout,.care-layout{grid-template-columns:1fr}
  .launch-checks{grid-template-columns:1fr 1fr}
  .package-grid{grid-template-columns:1fr}
  .marketing-layout{grid-template-columns:1fr}
  .marketing-copy{order:-1}
  .marketing-photo img{aspect-ratio:16/10}
  .service-list{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  .desktop-nav{display:none}
  .mobile-nav{display:block;position:relative}
  .mobile-nav summary{list-style:none;cursor:pointer;background:var(--dark);color:#fff;padding:11px 18px;border-radius:4px;font-size:var(--s-small);font-weight:500}
  .mobile-nav summary::-webkit-details-marker{display:none}
  .mobile-nav nav{position:absolute;right:0;top:calc(100% + 8px);z-index:5;background:var(--sand);border-radius:6px;padding:10px;display:grid;min-width:230px}
  .mobile-nav nav a{padding:12px 14px;text-decoration:none;color:var(--ink)}
}
/* Phone */
@media (max-width:620px){
  :root{--s-body:17px;--s-lead:20px;--s-h3:26px;--s-h2:38px;--s-h1:46px;--gap-section:88px}
  .wrap{width:calc(100% - 32px)}
  .navigation{min-height:76px}
  .hero{padding-top:24px}
  .hero-layout{padding-bottom:56px;gap:44px}
  .hero-actions{flex-direction:column;align-items:stretch}
  .hero-actions .text-link{justify-content:center}
  .desktop-frame{margin-left:28px}
  .frame-hero{height:300px}
  .frame-card{right:12px;width:58%;padding:18px 16px}
  .frame-card p{font-size:26px}
  .frame-card>span:not(.studio-cta){display:none}
  .studio-links{display:none}
  .phone-frame{width:132px;border-width:6px;border-radius:22px}
  .phone-frame img{height:92px}
  .phone-body{padding:10px}
  .phone-body p{font-size:16px;margin-bottom:8px}
  .phone-slots span,.phone-book{font-size:11px}
  .hero-visual{padding-bottom:40px}
  .hero-visual:has(.real-desktop){padding-bottom:105px}
  .phone-frame.real-phone{width:115px}
  .hero-visual figcaption{padding-left:150px}
  .parts-row{grid-template-columns:1fr}
  .parts-row a,.parts-row a:first-child{padding:16px 0}
  .parts-care{padding-left:16px!important;margin-inline:-16px;padding-inline:16px!important}
  .included-intro{margin-bottom:64px}
  .visit-feature{grid-template-columns:1fr}
  .visit-feature img{height:200px}
  .visit-feature>div{padding:22px 20px}
  .visit-feature p{font-size:28px}
  .visit-strip img{display:none}
  .profile-example{padding:16px}
  .profile-top img{width:80px;height:68px}
  .profile-details{padding:4px 14px}
  .profile-details>div{grid-template-columns:1fr auto;gap:4px 10px}
  .profile-details dt{grid-column:1/-1}
  .profile-actions .on{margin-left:0}
  .booking-content{padding:20px}
  .booking-title{font-size:28px}
  .reporting-body{padding:20px}
  .report-stats{gap:8px}
  .report-stats div{padding:12px}
  .report-stats strong{font-size:32px}
  .launch-checks{grid-template-columns:1fr;gap:26px;padding:28px 22px}
  .launch-button{width:100%}
  .care-app{flex-direction:column;align-items:flex-start;gap:16px;padding:22px}
  .care-app .text-link{margin-left:0}
  .bubble{max-width:100%}
  .summary,.package-enquiry{padding:28px 22px}
  .summary-total{margin-inline:-22px;margin-bottom:-28px;margin-top:48px;padding:40px 22px 26px}
  .form-grid{grid-template-columns:1fr}
  .enquiry-form .button{width:100%}
  .package-questions{margin-top:72px}
  .service-list{grid-template-columns:1fr}
  .marketing-services{padding:26px 22px}
  .footer-row{flex-direction:column;align-items:flex-start}
  .footer-row nav{flex-wrap:wrap;gap:14px 22px}
}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* Statamic integration: preserve the approved heading breaks and legal footer. */
.line{display:block}
.footer small a{text-underline-offset:3px}
.footer nav{flex-wrap:wrap}

.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.field-error{color:#a52e1c;font-size:15px;margin-top:8px}
.has-error input,.has-error textarea{border-color:#a52e1c}
.form-errors,.form-success{padding:24px;margin-bottom:28px;background:var(--soft);border-radius:4px}
.form-errors{background:#fff0e9}.form-errors ul{list-style:disc;padding-left:22px;margin-top:10px}
.form-success h3{margin-bottom:16px}

/* Approach: what we start from, then four principles */
.approach{padding-block:clamp(72px,9vw,128px);background:var(--paper)}
.approach-intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end;margin-bottom:56px}
.approach-intro .lead{max-width:46ch}
.approach-start{margin-top:18px;max-width:52ch;color:var(--ink)}
.approach-items{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:36px}
.approach-items li{border-top:2px solid var(--ink);padding-top:24px}
.approach-label{display:block;margin-bottom:10px;font-size:var(--s-small);font-weight:600;color:var(--rust)}
.approach-items h3{font-size:21px;line-height:1.25;letter-spacing:-.02em}
.approach-items p{margin-top:12px}
.approach-close{margin-top:56px;max-width:58ch;font-size:var(--s-lead);line-height:1.5;font-weight:500;color:var(--ink)}
@media(max-width:1100px){.approach-items{grid-template-columns:1fr 1fr;gap:40px 32px}}
@media(max-width:850px){.approach-intro{grid-template-columns:1fr;gap:22px;margin-bottom:40px}}
@media(max-width:600px){.approach-items{grid-template-columns:1fr;gap:30px}.approach-close{margin-top:40px}}
