:root{
  --paper:#fffcfa;--warm:#f9f1ec;--soft:#fcf9f7;--ink:#24201e;--muted:#6b635c;
  --line:#d8cfc9;--teal:#16333c;--teal-2:#275868;--blue:#5995a8;--blue-2:#a8c9d1;
  --blue-3:#cddfe4;--coral:#ff8c6f;--orange:#dd8e5e;--surface:#fff;
  --shadow:0 24px 70px rgba(107,99,92,.14);--shadow-soft:0 12px 36px rgba(107,99,92,.10);
  --container:1400px;--radius:28px;--header:76px
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 24px)}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Source Sans 3",sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}button,a,input{font:inherit}.container{width:min(calc(100% - 48px),var(--container));margin-inline:auto}.skip-link{position:fixed;left:16px;top:10px;z-index:9999;transform:translateY(-160%);padding:10px 14px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--teal);text-decoration:none}.skip-link:focus{transform:none}:focus-visible{outline:3px solid rgba(89,149,168,.42);outline-offset:4px}.scroll-progress{position:fixed;left:0;right:0;top:0;z-index:999;height:3px}.scroll-progress i{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--coral),var(--blue));transform-origin:left}
.hero{padding:92px 0 100px}.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:68px;align-items:center}.back-link{display:inline-block;margin-bottom:32px;color:var(--teal);font-size:13px;text-decoration:none}.eyebrow{margin:0 0 14px;color:var(--teal-2);font-size:10px;font-weight:800;letter-spacing:.15em}.hero h1,.section-head h2,.screen-heading h2,.final-card h2{letter-spacing:-.048em}.hero h1{max-width:920px;margin:0;color:var(--teal);font:500 clamp(56px,6.4vw,94px)/.94 "Fira Sans",sans-serif}.hero h1 em,.section-head h2 em,.final-card h2 em{font-family:Lora,serif;font-weight:400}.hero-lead{max-width:720px;margin:26px 0 0;color:#514943;font-size:18px}.hero-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:30px;max-width:720px}.hero-meta span{padding:13px 15px;border:1px solid var(--line);border-radius:15px;background:#fff}.hero-meta small,.hero-meta b{display:block}.hero-meta small{color:#8d837c;font-size:9px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.hero-meta b{margin-top:4px;color:var(--teal);font-size:13px}.hero-actions{display:flex;gap:10px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;margin-top:25px;min-height:48px;padding:12px 18px;border-radius:999px;font-size:13px;font-weight:700;text-decoration:none;transition:transform .2s,box-shadow .2s,background .2s}.button:hover{transform:translateY(-2px)}.button--primary{background:var(--teal);color:#fff;box-shadow:0 12px 28px rgba(22,51,60,.17)}.button--ghost{border:1px solid var(--line);color:var(--teal);background:#fff}.hero-card{min-height:510px;border:1px solid var(--line);border-radius:34px;background:linear-gradient(145deg,#fff 0%,#f8f1ec 100%);box-shadow:var(--shadow);overflow:hidden}.hero-card-top,.hero-card-foot{height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 24px}.hero-card-top{border-bottom:1px solid var(--line)}.hero-card-top span,.hero-card-foot span{font-size:9px;font-weight:800;letter-spacing:.15em;color:#8b817a}.hero-card-top b,.hero-card-foot strong{font-size:12px;color:var(--teal)}.hero-card-body{min-height:370px;display:grid;place-items:center;padding:30px;text-align:center}.hero-card-body--figma{background:linear-gradient(145deg,#fbf8f5 0%,#f3f7f8 100%)}.hero-home-preview{position:relative;display:block;width:100%;padding:10px;border:1px solid rgba(216,207,201,.9);border-radius:22px;background:#fff;box-shadow:0 18px 46px rgba(107,99,92,.11);overflow:hidden;text-decoration:none;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.hero-home-preview:hover,.hero-home-preview:focus-visible{transform:translateY(-3px);border-color:rgba(89,149,168,.55);box-shadow:0 24px 60px rgba(107,99,92,.16)}.hero-home-preview img{display:block;width:100%;height:auto;max-height:330px;object-fit:contain;border-radius:15px;background:#fff}.hero-home-preview__hint{position:absolute;right:18px;bottom:18px;display:inline-flex;align-items:center;gap:8px;max-width:calc(100% - 36px);padding:9px 12px;border:1px solid rgba(255,255,255,.65);border-radius:999px;background:rgba(22,51,60,.86);color:#fff;backdrop-filter:blur(12px);font-size:10px;font-weight:700;letter-spacing:.02em;box-shadow:0 9px 24px rgba(22,51,60,.18)}.hero-home-preview__hint i{width:7px;height:7px;border-radius:50%;background:#79d7b8;box-shadow:0 0 0 4px rgba(121,215,184,.18)}.omamo-wordmark{font:400 clamp(52px,5vw,76px)/1 Lora,serif;color:var(--blue)}.omamo-wordmark i{font-style:normal;color:var(--coral)}.omamo-wordmark b{color:var(--orange)}.hero-card-body p{max-width:440px;margin:24px auto;color:var(--teal-2);font:400 22px/1.35 "Fira Sans",sans-serif}.hero-flow-line{width:min(100%,470px);display:grid;grid-template-columns:repeat(9,1fr);align-items:center;position:relative;margin-top:18px}.hero-flow-line:before{content:"";position:absolute;left:4%;right:4%;height:1px;background:var(--blue-2)}.hero-flow-line i{position:relative;z-index:1;justify-self:center;width:10px;height:10px;border-radius:50%;background:var(--paper);border:2px solid var(--blue)}.hero-flow-line i:first-child,.hero-flow-line i:last-child{background:var(--blue)}.hero-card-foot{border-top:1px solid var(--line);background:rgba(255,255,255,.56)}
.section{padding:105px 0}.flow{background:var(--soft);border-top:1px solid rgba(216,207,201,.5);border-bottom:1px solid rgba(216,207,201,.5)}.section-head{margin-bottom:46px}.section-head--split{display:grid;grid-template-columns:1fr .7fr;gap:60px;align-items:end}.section-head h2{margin:0;color:var(--teal);font:500 clamp(44px,5vw,72px)/.98 "Fira Sans",sans-serif}.section-head>p{margin:0;color:var(--muted);font-size:17px}.journey{display:grid;grid-template-columns:repeat(9,1fr);border:1px solid var(--line);border-radius:24px;overflow:hidden;background:#fff;box-shadow:var(--shadow-soft)}.journey a{position:relative;min-height:134px;padding:18px 15px;display:flex;flex-direction:column;justify-content:flex-end;border-right:1px solid var(--line);color:var(--ink);text-decoration:none;transition:background .2s,transform .2s}.journey a:last-child{border-right:0}.journey a:hover{background:#f4f8f9}.journey i{position:absolute;left:15px;top:15px;font-style:normal;color:var(--coral);font-size:9px;font-weight:800}.journey b{color:var(--teal);font-size:14px}.journey small{margin-top:3px;color:#897f78;font-size:10px}
.problem-section{background:linear-gradient(180deg,#f8f4f1 0%,#fffcfa 100%);border-top:1px solid rgba(216,207,201,.55)}
.problem-intro{display:grid;grid-template-columns:220px minmax(0,1fr);gap:40px;align-items:start}.problem-intro>.eyebrow{padding-top:10px}.problem-intro h2{max-width:920px;margin:0;color:var(--teal);font:500 clamp(42px,5vw,72px)/.98 "Fira Sans",sans-serif;letter-spacing:-.048em}.problem-intro h2 em{font-family:Lora,serif;font-weight:400}.problem-intro>div>p{max-width:850px;margin:20px 0 0;color:var(--muted);font-size:18px}
.problem-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:40px}.problem-card{position:relative;min-height:250px;padding:20px;border:1px solid var(--line);border-radius:19px;background:linear-gradient(155deg,#fff 0%,#fbf8f6 100%);box-shadow:0 10px 28px rgba(107,99,92,.08);cursor:pointer;overflow:hidden;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,background .22s ease}.problem-card:before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:linear-gradient(90deg,var(--coral),var(--blue));transform:scaleX(.22);transform-origin:left;transition:transform .22s ease}.problem-card:hover,.problem-card:focus-visible{transform:translateY(-4px);border-color:#a8c9d1;box-shadow:0 18px 42px rgba(39,88,104,.13);outline:0}.problem-card:hover:before,.problem-card:focus-visible:before,.problem-card[aria-expanded="true"]:before{transform:scaleX(1)}.problem-card[aria-expanded="true"]{border-color:#86b3bd;background:linear-gradient(155deg,#fff 0%,#eef6f7 100%);box-shadow:0 18px 46px rgba(39,88,104,.14)}.problem-card__top{display:flex;align-items:center;justify-content:space-between}.problem-grid span{color:var(--coral);font-size:10px;font-weight:800;letter-spacing:.15em}.problem-card__top i{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#eef5f6;color:var(--teal-2);font-size:18px;font-style:normal;font-weight:500}.problem-grid h3{margin:28px 0 10px;color:var(--teal);font:500 21px/1.12 "Fira Sans",sans-serif}.problem-grid p{margin:0;color:var(--muted);font-size:14px}.problem-card__answer{margin-top:16px;padding-top:14px;border-top:1px solid #cddfe4}.problem-card__answer b,.problem-card__answer small{display:block}.problem-card__answer b{color:var(--coral);font-size:9px;letter-spacing:.1em;text-transform:uppercase}.problem-card__answer small{margin-top:6px;color:#3f5e66;font-size:12px;line-height:1.45}
.case-transparency{display:grid;grid-template-columns:220px minmax(0,1fr);gap:40px;margin-top:18px;padding:24px 28px;border:1px solid #b8d1d7;border-radius:20px;background:#edf5f6}.case-transparency b{color:var(--teal);font-size:13px}.case-transparency p{margin:0;color:#52666b;font-size:14px}
@media(max-width:1050px){.problem-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:780px){.problem-intro,.case-transparency{grid-template-columns:1fr;gap:10px}.problem-grid{grid-template-columns:1fr}.problem-card{min-height:0}.problem-grid h3{margin-top:22px}.problem-intro>div>p{font-size:16px}}
.screen-section{padding:112px 0 124px;overflow:clip}.screen-section--paper{background:var(--paper)}.screen-section--soft{background:#f8f4f1}.screen-section--blue{background:linear-gradient(145deg,#173945 0%,#234f5d 100%);color:#fff}.screen-heading{display:grid;grid-template-columns:1fr .72fr;gap:50px;align-items:end;margin-bottom:44px}.screen-index{margin:0 0 10px;color:var(--coral);font-size:10px;font-weight:800;letter-spacing:.15em}.screen-heading h2{margin:0;color:var(--teal);font:500 clamp(42px,5.5vw,76px)/.96 "Fira Sans",sans-serif}.screen-heading--light h2{color:#fff}.screen-copy{justify-self:end;max-width:560px}.screen-copy p{margin:0;color:var(--muted);font-size:17px}.screen-heading--light .screen-copy p{color:#d9e5e8}.live-hint{display:inline-flex;align-items:center;gap:8px;margin-top:16px;padding:8px 12px;border-radius:999px;background:#eef6f7;color:var(--teal-2);font-size:10px;font-weight:800;letter-spacing:.07em}.live-hint i{width:7px;height:7px;border-radius:50%;background:#26a77d;box-shadow:0 0 0 4px rgba(38,167,125,.12)}.live-hint--light{background:rgba(255,255,255,.1);color:#eaf3f4}.screen-stage{position:relative;border-radius:32px}.screen-stage--wide{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:18px;align-items:stretch}.screen-toolbar{grid-column:1/-1;min-height:58px;padding:10px 14px 10px 18px;display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.78);backdrop-filter:blur(14px);box-shadow:0 9px 28px rgba(107,99,92,.07)}.screen-toolbar span,.screen-toolbar b{display:block}.screen-toolbar span{color:#8b817a;font-size:8px;font-weight:800;letter-spacing:.14em}.screen-toolbar b{margin-top:2px;color:var(--teal);font-size:13px}.screen-toolbar a{padding:9px 12px;border-radius:999px;color:var(--teal);font-size:10px;font-weight:800;text-decoration:none;background:#fff;border:1px solid var(--line)}.source-frame{position:relative;margin:0;overflow:hidden;background:#fff}.source-frame img{display:block;width:100%;height:auto;object-fit:contain;user-select:none;-webkit-user-drag:none}.source-frame--desktop{border:1px solid rgba(216,207,201,.85);border-radius:24px;box-shadow:0 28px 70px rgba(107,99,92,.12)}.source-frame--letterbox{align-self:center}.source-frame--profile{align-self:center}.interaction-panel{position:sticky;top:calc(var(--header) + 24px);align-self:start;min-height:0;padding:22px 20px;border:1px solid rgba(216,207,201,.9);border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(247,251,252,.98));box-shadow:0 16px 38px rgba(107,99,92,.08);display:flex;flex-direction:column;justify-content:flex-start;overflow:hidden}.interaction-panel:after{content:"";position:absolute;left:0;top:0;width:3px;height:100%;background:linear-gradient(180deg,var(--coral),var(--blue));opacity:.72}.interaction-panel>span{display:flex;align-items:center;gap:7px;color:var(--coral);font-size:8px;font-weight:800;letter-spacing:.15em}.interaction-panel>span:before{content:"";width:7px;height:7px;border-radius:50%;background:#35ad83;box-shadow:0 0 0 4px rgba(53,173,131,.1)}.interaction-panel>b{margin-top:10px;color:var(--teal);font:400 24px/1.08 Lora,serif}.interaction-panel>p{margin:10px 0 0;color:#756b65;font-size:13px;line-height:1.55}.state-chip{margin-top:20px;padding:10px 12px;border-radius:12px;background:#f1f6f7;color:var(--teal-2);font-size:11px;font-weight:700}.state-chip--large{padding:14px 16px}.selection-row{display:flex;gap:6px;flex-wrap:wrap;margin-top:20px}.selection-row i{padding:8px 10px;border-radius:999px;background:#f1f6f7;color:var(--teal-2);font-size:10px;font-style:normal;font-weight:700}
.hit{position:absolute;z-index:4;border:0;border-radius:12px;background:transparent;cursor:pointer;transition:background .18s,box-shadow .18s}.hit:focus-visible,.hit:hover{background:rgba(89,149,168,.08);box-shadow:inset 0 0 0 2px rgba(89,149,168,.48),0 0 0 5px rgba(89,149,168,.08);outline:0}.hit.is-active{background:rgba(38,167,125,.07);box-shadow:inset 0 0 0 2px rgba(38,167,125,.58),0 0 0 5px rgba(38,167,125,.08)}.hit-hero-search{left:42%;top:45%;width:45%;height:12%}.hit-list-first{left:13%;top:11%;width:74%;height:43%}.hit-profile-contact{right:3.5%;top:6%;width:18.5%;height:34%}.hit-profile-favorite{right:3.5%;bottom:7%;width:18.5%;height:15%}.hit-chat-composer{left:14%;bottom:1%;width:72%;height:11%}.hit-calendar-day{left:39.5%;top:49%;width:5.6%;height:8%}.hit-calendar-time{left:66%;top:44%;width:15%;height:7%}.hit-calendar-book{left:66%;top:76%;width:15%;height:7%}.hit-summary-toggle,.hit-address-toggle{right:6%;top:22%;width:16%;height:8%}.hit-summary-next,.hit-address-next{left:12%;top:72%;width:76%;height:10%}.hit-payment-method{left:14%;top:40%;width:72%;height:11%}.hit-payment-pay{left:12%;top:73%;width:76%;height:10%}.hit-done-invoice{left:8%;top:72%;width:34%;height:10%}.hit-done-return{right:4%;top:72%;width:50%;height:10%}
.screen-stage--phone{display:grid;grid-template-columns:minmax(320px,.85fr) minmax(340px,.72fr);gap:80px;align-items:center;max-width:1080px}.phone-presentation{position:relative;display:grid;place-items:center;min-height:760px}.screen-toolbar--floating{position:absolute;left:0;right:0;top:0;z-index:5}.source-frame--phone{width:min(100%,440px);border-radius:30px;box-shadow:0 34px 90px rgba(10,30,36,.22)}.source-frame--payment{width:min(100%,430px)}.screen-section--blue .source-frame--phone{box-shadow:0 34px 95px rgba(0,0,0,.28)}.interaction-card{position:sticky;top:calc(var(--header) + 24px);align-self:start;padding:32px;border:1px solid var(--line);border-radius:26px;background:#fff;box-shadow:var(--shadow-soft)}.interaction-card h3{margin:0;color:var(--teal);font:400 clamp(30px,3vw,44px)/1.02 Lora,serif}.interaction-card>p:not(.eyebrow){color:var(--muted);font-size:15px}.interaction-card--dark{background:rgba(13,36,43,.76);border-color:rgba(255,255,255,.16);color:#fff;backdrop-filter:blur(14px)}.interaction-card--dark .eyebrow{color:#aed0d7}.interaction-card--dark h3{color:#fff}.interaction-card--dark>p:not(.eyebrow){color:#cbdcdf}.chat-demo{margin-top:28px}.chat-demo label{display:block;margin-bottom:8px;color:#8c817a;font-size:10px;font-weight:800;letter-spacing:.08em}.interaction-card--dark .chat-demo label{color:#c8dade}.chat-demo>div{display:grid;grid-template-columns:1fr auto;border:1px solid var(--line);border-radius:15px;overflow:hidden;background:#fff}.chat-demo input{min-width:0;height:52px;padding:0 14px;border:0;outline:0;color:var(--ink);background:transparent}.chat-demo button{padding:0 16px;border:0;background:var(--blue);color:#fff;cursor:pointer;font-size:12px;font-weight:700}.text-action{margin-top:20px;padding:0;border:0;background:none;color:var(--teal-2);font-size:12px;font-weight:800;cursor:pointer}.text-action--light{color:#d9edf1}.mini-status{display:flex;gap:7px;flex-wrap:wrap;margin-top:25px}.mini-status span,.mini-status b{padding:9px 11px;border-radius:999px;background:#f4f1ef;font-size:11px}.mini-status b{background:var(--teal);color:#fff}.micro-state{margin-top:18px!important;padding-top:18px;border-top:1px solid var(--line);font-size:12px!important;font-weight:700!important;color:var(--teal-2)!important}.payment-state{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;margin-top:24px;padding:15px;border:1px solid rgba(255,255,255,.16);border-radius:14px}.payment-state span{color:#d1e3e6;font-size:11px}.payment-state b{font-size:18px}.success-badge{margin-top:24px;padding:14px 15px;border-radius:14px;background:#eaf7f3;color:#16765b;font-size:12px;font-weight:800}
.final-cta{padding:42px 0 90px;background:var(--paper)}.final-card{padding:58px;border-radius:34px;background:linear-gradient(135deg,var(--teal),#265765);display:grid;grid-template-columns:1fr auto;gap:50px;align-items:end;color:#fff}.final-card h2{margin:0;color:#fff;font:500 clamp(44px,5vw,70px)/.96 "Fira Sans",sans-serif}.final-card p:not(.eyebrow){max-width:760px;color:#d7e6e9}.final-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}.final-actions .button--light{background:var(--coral);color:#fff}.final-actions .button--line-light{background:#fff;border:1px solid rgba(255,255,255,.72);color:var(--teal)}.footer{border-top:1px solid var(--line);background:var(--paper)}.footer>.container{min-height:105px;display:flex;align-items:center;justify-content:space-between}.footer span{color:#8c827b;font-size:11px}
.quick-nav-trigger{position:fixed;right:22px;bottom:22px;z-index:70;display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 17px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.92);color:var(--teal);box-shadow:0 16px 45px rgba(17,35,41,.15);backdrop-filter:blur(15px);font-size:11px;font-weight:800;cursor:pointer;opacity:0;transform:translateY(10px);pointer-events:none;transition:.25s}.quick-nav-trigger.is-visible{opacity:1;transform:none;pointer-events:auto}.quick-nav-trigger span{color:var(--coral)}.quick-nav[hidden]{display:none}.quick-nav{position:fixed;inset:0;z-index:100;display:grid;place-items:end center}.quick-nav-backdrop{position:absolute;inset:0;border:0;background:rgba(12,31,37,.62);backdrop-filter:blur(6px)}.quick-nav-sheet{position:relative;width:min(calc(100% - 24px),640px);margin:0 0 12px;padding:24px;border-radius:28px;background:#fff;box-shadow:0 30px 100px rgba(0,0,0,.3)}.quick-nav-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.quick-nav-head small{color:#8a8079;font-size:8px;font-weight:800;letter-spacing:.15em}.quick-nav-head h2{margin:3px 0 0;color:var(--teal);font:400 30px Lora,serif}.quick-nav-head button{width:46px;height:46px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--teal);font-size:24px;cursor:pointer}.quick-nav nav{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.quick-nav nav a{display:flex;gap:10px;align-items:center;padding:12px;border-radius:12px;color:var(--ink);text-decoration:none;font-size:12px}.quick-nav nav a:hover,.quick-nav nav a[aria-current="location"]{background:#eff5f6;color:var(--teal)}.quick-nav nav i{font-style:normal;color:var(--coral);font-size:9px;font-weight:800}
.toast{position:fixed;right:22px;bottom:84px;z-index:120;display:flex;gap:11px;align-items:center;max-width:min(390px,calc(100vw - 32px));padding:14px 16px;border-radius:16px;background:var(--teal);color:#fff;box-shadow:0 20px 70px rgba(0,0,0,.28)}.toast[hidden]{display:none}.toast>span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#2f7a63;font-weight:800}.toast b,.toast small{display:block}.toast b{font-size:12px}.toast small{margin-top:2px;color:#bdd2d7;font-size:10px}
.reveal{opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s ease}.reveal.is-visible{opacity:1;transform:none}
@media(max-width:1100px){.hero-grid{grid-template-columns:1fr;gap:46px}.hero-card{max-width:850px}.section-head--split,.screen-heading{grid-template-columns:1fr}.screen-copy{justify-self:start;max-width:750px}.journey{grid-template-columns:repeat(3,1fr)}.journey a{border-bottom:1px solid var(--line)}.screen-stage--wide{grid-template-columns:1fr}.interaction-panel{min-height:auto}.screen-stage--phone{gap:42px}.final-card{grid-template-columns:1fr}.final-actions{justify-content:flex-start}}
@media(max-width:780px){:root{--header:70px}.interaction-panel,.interaction-card{position:static}.container{width:min(calc(100% - 30px),var(--container))}.desktop-nav{display:none}.nav-cta{margin-left:auto}.hero{padding:56px 0 72px}.hero h1{font-size:clamp(48px,14vw,70px)}.hero-lead{font-size:16px}.hero-card{min-height:410px}.hero-card-body{min-height:280px;padding:34px 24px}.section{padding:78px 0}.journey{grid-template-columns:1fr 1fr}.journey a{min-height:104px}.screen-section{padding:78px 0 88px}.screen-heading{margin-bottom:30px}.screen-heading h2{font-size:44px}.screen-copy p{font-size:15px}.screen-toolbar{border-radius:14px}.source-frame--desktop{border-radius:17px}.screen-stage--phone{grid-template-columns:1fr;gap:28px}.phone-presentation{min-height:auto;padding-top:76px}.source-frame--phone{width:min(100%,430px)}.interaction-card{padding:26px}.final-card{padding:38px 26px}.quick-nav nav{grid-template-columns:1fr 1fr}.hit:hover{background:transparent;box-shadow:none}.hit:focus-visible,.hit.is-active{background:rgba(89,149,168,.08);box-shadow:inset 0 0 0 2px rgba(89,149,168,.48),0 0 0 5px rgba(89,149,168,.08)}}
@media(max-width:520px){.container{width:min(calc(100% - 24px),var(--container))}.nav-cta{display:none}.hero-meta{grid-template-columns:1fr}.hero-actions .button{width:100%}.journey{grid-template-columns:1fr}.journey a{border-right:0}.screen-heading h2{font-size:39px}.screen-toolbar{padding:9px 10px 9px 13px}.screen-toolbar b{font-size:12px}.screen-toolbar a{font-size:9px}.screen-stage--wide{gap:10px}.interaction-panel{padding:18px}.source-frame--phone,.source-frame--payment{border-radius:24px}.phone-presentation{padding-top:72px}.final-card h2{font-size:42px}.final-actions .button{width:100%}.quick-nav-trigger{right:14px;bottom:14px}.quick-nav nav{grid-template-columns:1fr}.toast{left:14px;right:14px;bottom:70px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.hit,.reveal,.quick-nav-trigger,.desktop-nav a:after{transition:none}.reveal{opacity:1;transform:none}}

/* v3: richer source-faithful interactions */
.interaction-panel--profile{gap:0}
.profile-facts{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}
.profile-facts i{padding:7px 9px;border-radius:999px;background:#fff;border:1px solid var(--line);color:#655d58;font-size:10px;font-style:normal;font-weight:700}
.interaction-actions{display:grid;gap:8px;margin-top:16px}
.interaction-actions button{min-height:42px;padding:9px 12px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--teal);font:700 11px/1.2 "Source Sans 3",sans-serif;cursor:pointer;text-align:left}
.interaction-actions button:first-child{background:var(--teal);border-color:var(--teal);color:#fff}
.hit-profile-more{left:51%;bottom:3.5%;width:24%;height:14%}
.hit-list-favorite{right:8%;top:12%;width:7%;height:10%}
.hit-chat-call{left:58%;top:1%;width:10%;height:8%}
.hit-chat-video{left:68%;top:1%;width:10%;height:8%}
.hit-chat-attach{left:1%;bottom:0;width:12%;height:11%}
.hit-chat-send{right:0;bottom:0;width:13%;height:11%}
.chat-state-row{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 12px}
.chat-state-row span{padding:7px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.2);font-size:10px;font-weight:800;letter-spacing:.04em}
.interaction-card:not(.interaction-card--dark) .chat-state-row span{border-color:var(--line);background:#f4f8f9;color:var(--teal-2)}

.full-profile{margin-top:24px;border:1px solid var(--line);border-radius:30px;background:#fff;box-shadow:0 24px 60px rgba(107,99,92,.10);overflow:hidden}
.full-profile[hidden]{display:none!important}
.full-profile.is-collapsed .profile-jump,.full-profile.is-collapsed .full-profile__viewport,.full-profile.is-collapsed .full-profile__footer{display:none}
.full-profile.is-collapsed .full-profile__head{border-bottom:0}
.full-profile__head{display:flex;justify-content:space-between;gap:30px;padding:28px 30px 22px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fff,#fbf8f6)}
.full-profile__head .eyebrow{margin:0 0 8px;color:var(--coral);font-size:9px;font-weight:800;letter-spacing:.15em}
.full-profile__head h3{margin:0;color:var(--teal);font:400 31px/1.08 Lora,serif}
.full-profile__head p:not(.eyebrow){max-width:720px;margin:10px 0 0;color:#6f6660;font-size:14px;line-height:1.5}
.full-profile__close{align-self:flex-start;min-height:42px;padding:9px 14px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--teal);font-weight:800;font-size:11px;cursor:pointer;white-space:nowrap}
.profile-jump{position:sticky;top:var(--header);z-index:7;display:flex;gap:8px;overflow:auto;padding:12px 18px;background:rgba(255,252,250,.94);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}
.profile-jump button{flex:0 0 auto;min-height:40px;padding:8px 13px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--teal);font-size:11px;font-weight:800;cursor:pointer}
.profile-jump button.active{background:var(--teal);border-color:var(--teal);color:#fff}
.full-profile__viewport{position:relative;height:min(76vh,900px);overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth;background:#f7f3f0;overscroll-behavior:contain}
.full-profile__canvas{position:relative;width:100%;min-width:0;margin:0;background:#fff}
.full-profile__viewport img{display:block;width:100%;max-width:100%;height:auto;min-width:0;user-select:none;-webkit-user-drag:none}
.full-profile__hit{position:absolute;z-index:3;border:0;border-radius:12px;background:transparent;cursor:pointer;transition:background .18s,box-shadow .18s}
.full-profile__hit:hover,.full-profile__hit:focus-visible{outline:0;background:rgba(89,149,168,.1);box-shadow:inset 0 0 0 2px rgba(89,149,168,.58),0 0 0 5px rgba(89,149,168,.1)}
.full-profile__hit.is-active{background:rgba(38,167,125,.09);box-shadow:inset 0 0 0 2px rgba(38,167,125,.62),0 0 0 5px rgba(38,167,125,.1)}
.full-profile__hit--contact{right:10%;top:5.3%;width:16%;height:2.3%}
.full-profile__hit--favorite{right:9%;top:10.1%;width:18%;height:1.8%}
.full-profile__hit--book{left:71%;top:24.2%;width:13%;height:2.2%}
.full-profile__hit--tab-availability{left:2%;top:1.45%;width:17.8%;height:1.05%;border-radius:999px}
.full-profile__hit--tab-experience{left:20.6%;top:1.45%;width:17.8%;height:1.05%;border-radius:999px}
.full-profile__hit--tab-opinions{left:39.2%;top:1.45%;width:17.8%;height:1.05%;border-radius:999px}
.full-profile__hit--tab-references{left:57.8%;top:1.45%;width:13.2%;height:1.05%;border-radius:999px}
.full-profile__hit--tab-about{left:72.1%;top:1.45%;width:7.4%;height:1.05%;border-radius:999px}
.full-profile__hit--tab-location{left:80.4%;top:1.45%;width:17.6%;height:1.05%;border-radius:999px}
.full-profile__hit--more{left:52.8%;top:10.2%;width:15.3%;height:1.45%}
.full-profile__hit--day{left:45.7%;top:20.95%;width:4.3%;height:1.25%;border-radius:50%}
.full-profile__hit--time{left:72.2%;top:17.7%;width:10.6%;height:1.15%;border-radius:999px}
.full-profile__hit--experience-more{left:67.4%;top:41.4%;width:8.2%;height:1.1%}
.full-profile__hit--parent-contact{left:58.2%;top:44.8%;width:17.5%;height:1.15%;border-radius:999px}
.full-profile__hit--experience-next{left:82.7%;top:49.2%;width:3.8%;height:1.25%;border-radius:50%}
.full-profile__hit--reference-more{left:67.5%;top:52.2%;width:8.2%;height:1.1%}
.full-profile__hit--about-contact{left:73.8%;top:62.3%;width:14.5%;height:1.65%}
.full-profile__hit--map{left:48.5%;top:84.1%;width:6%;height:2%;border-radius:50%}
.full-profile__footer{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:12px 18px;border-top:1px solid var(--line);font-size:10px;color:#7a716b}
.full-profile__footer a{color:var(--teal);font-weight:800;text-decoration:none}

/* More obvious but non-destructive interactive affordance */
.source-frame:has(.hit) .hit:after{content:"";position:absolute;inset:0;border-radius:inherit;opacity:0;transition:opacity .18s ease}
.source-frame:has(.hit) .hit:hover:after,.source-frame:has(.hit) .hit:focus-visible:after{opacity:1;box-shadow:inset 0 0 0 2px rgba(89,149,168,.50)}

@media(max-width:1100px){
  .full-profile__viewport img{min-width:0}
}
@media(max-width:780px){
  .full-profile__head{padding:22px;display:grid;grid-template-columns:1fr}
  .full-profile__head h3{font-size:27px}
  .full-profile__close{justify-self:start}
  .profile-jump{top:70px;padding:10px 12px}
  .full-profile__viewport{height:72vh}
  .full-profile__viewport img{min-width:0}
  .full-profile__footer{align-items:flex-start;flex-direction:column}
  .profile-facts{margin-top:14px}
  .interaction-actions{grid-template-columns:1fr}
}

/* Source project and UI system additions */
.source-section{background:linear-gradient(180deg,#fffcfa 0%,#f8f4f1 100%);border-top:1px solid rgba(216,207,201,.5);border-bottom:1px solid rgba(216,207,201,.5)}
.source-section__head{display:grid;grid-template-columns:220px minmax(0,1fr);gap:40px;align-items:start;margin-bottom:50px}
.source-section__head>.eyebrow{padding-top:10px}
.source-section__head h2{max-width:980px;margin:0;color:var(--teal);font:500 clamp(42px,5vw,72px)/.98 "Fira Sans",sans-serif;letter-spacing:-.048em}
.source-section__head h2 em{font-family:Lora,serif;font-weight:400}
.source-section__head>div>p{max-width:820px;margin:22px 0 0;color:var(--muted);font-size:18px}
.source-figma-frame,.source-device{margin:0;overflow:hidden;border:1px solid rgba(216,207,201,.85);background:#fff;box-shadow:var(--shadow)}
.source-figma-frame{width:min(100%,1040px);margin-inline:auto;border-radius:32px}
.source-figma-frame img{display:block;width:100%;height:auto}
.source-figma-frame figcaption,.source-device figcaption{display:flex;justify-content:space-between;gap:20px;padding:18px 22px;border-top:1px solid rgba(216,207,201,.7);background:rgba(255,252,250,.96);font-size:13px}
.source-figma-frame figcaption span,.source-device figcaption span{color:#8d827b}
.responsive-showcase{display:grid;grid-template-columns:1.25fr .75fr;gap:26px;margin-top:28px}
.source-device{border-radius:26px}
.source-device img{display:block;width:100%;height:620px;object-fit:contain;background:#f9f7f4}
.two-sided-model{display:grid;grid-template-columns:1fr auto 1fr;gap:30px;align-items:center;margin-top:28px;padding:34px;border:1px solid var(--line);border-radius:28px;background:#fff;box-shadow:var(--shadow-soft)}
.two-sided-model>div{min-width:0;padding:6px 10px}
.two-sided-model span{color:var(--coral);font-size:10px;font-weight:800;letter-spacing:.15em}
.two-sided-model h3{margin:10px 0 8px;color:var(--teal);font:400 30px/1.1 Lora,serif}
.two-sided-model p{margin:0;color:var(--muted)}
.two-sided-model>i{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:var(--teal);color:#fff;font-size:24px;font-style:normal}
.ui-system-section{background:linear-gradient(180deg,#f9f1ec 0%,#f7f3f0 100%);border-top:1px solid rgba(216,207,201,.55)}
.system-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:24px}
.palette-card,.type-card{padding:34px;border:1px solid var(--line);border-radius:28px;background:#fff;box-shadow:var(--shadow-soft)}
.palette-card h3,.type-card h3{margin:0 0 25px;color:var(--teal);font:400 30px/1.15 Lora,serif}
.swatches{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.swatches i{display:flex;align-items:flex-end;min-height:126px;padding:14px;border:1px solid rgba(0,0,0,.07);border-radius:18px;background:var(--c);font-style:normal}
.swatches b{padding:5px 8px;border-radius:8px;background:rgba(255,255,255,.86);color:#16333c;font-size:11px}
.type-sample{padding:18px 0;border-top:1px solid var(--line);color:var(--teal);font-size:30px}
.type-sample span{color:var(--muted);font:400 13px "Source Sans 3",sans-serif}
.type-sample--fira{font-family:"Fira Sans",sans-serif}.type-sample--lora{font-family:Lora,serif;font-style:italic}.type-sample--source{font-family:"Source Sans 3",sans-serif}

@media(max-width:980px){
  .source-section__head{grid-template-columns:1fr;gap:12px}
  .responsive-showcase,.system-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .source-section__head h2{font-size:42px}
  .source-section__head>div>p{font-size:16px}
  .source-figma-frame,.source-device{border-radius:20px}
  .source-figma-frame figcaption,.source-device figcaption{flex-direction:column;gap:3px}
  .responsive-showcase{grid-template-columns:1fr}
  .source-device img{height:auto;max-height:560px}
  .two-sided-model{grid-template-columns:1fr;padding:26px 22px}
  .two-sided-model>i{transform:rotate(90deg)}
  .swatches{grid-template-columns:repeat(2,1fr)}
  .palette-card,.type-card{padding:26px 22px}
}

/* Replacement payment screens: proportions and transparent hit areas */
.source-frame--replacement{border:1px solid rgba(168,201,209,.52);background:#fffcfa;box-shadow:0 28px 72px rgba(39,88,104,.18)}
.source-frame--replacement img{display:block;width:100%;height:auto;object-fit:contain}
.screen-section--blue .source-frame--replacement{box-shadow:0 34px 95px rgba(0,0,0,.3),0 0 0 1px rgba(255,255,255,.08)}
.hit-summary-toggle{right:7%;top:20%;width:17%;height:9%}
.hit-summary-next{left:11%;top:83%;width:78%;height:8%}
.hit-payment-method{left:14%;top:43%;width:72%;height:14%}
.hit-payment-pay{left:14%;top:82%;width:72%;height:10%}

/* Shortened payment flow */
.journey{grid-template-columns:repeat(8,1fr)}
.hit-summary-next{left:11%;top:89%;width:78%;height:8%}
.hit-address-toggle{right:7%;top:19%;width:18%;height:8%}
.hit-address-next{left:14%;top:84%;width:72%;height:9%}
.hit-payment-method{left:8%;top:43%;width:84%;height:11%}
.hit-payment-pay{left:7%;top:88%;width:86%;height:8%}
.hit-done-invoice{left:5%;top:87%;width:43%;height:9%}
.hit-done-return{right:5%;top:87%;width:44%;height:9%}

/* Desktop content measure matched to MB Beauty */
@media(min-width:1025px){
  .container{width:min(calc(100% - 144px),1160px)}
  .hero-grid,.screen-stage--phone{gap:68px}
  .quick-nav-trigger{display:none!important}
}

/* Screen labels were removed to keep the presentation visually calm. */
.phone-presentation{min-height:0}
@media(max-width:780px){.phone-presentation{padding-top:0}}

/* Hotspots aligned with the visible controls in the profile summary. */
.hit-profile-more{left:53%;top:76%;bottom:auto;width:16%;height:10%}
.hit-profile-contact{right:8%;top:24%;bottom:auto;width:14%;height:14%}
.hit-profile-favorite{right:5.5%;top:76.5%;bottom:auto;width:18%;height:10%}

/* Interaction feedback stays inside the source button boundaries. */
.hit:hover,.hit:focus-visible{box-shadow:inset 0 0 0 2px rgba(89,149,168,.62)}
.hit.is-active{box-shadow:inset 0 0 0 2px rgba(38,167,125,.68)}
.source-frame:has(.hit) .hit:hover:after,.source-frame:has(.hit) .hit:focus-visible:after{box-shadow:inset 0 0 0 2px rgba(89,149,168,.58)}
.full-profile__hit:hover,.full-profile__hit:focus-visible{box-shadow:inset 0 0 0 2px rgba(89,149,168,.62)}
.full-profile__hit.is-active{box-shadow:inset 0 0 0 2px rgba(38,167,125,.68)}

/* Final hotspot map: every active area follows the control visible in its source screen. */
.hit-hero-search{left:42.7%;top:calc(64% - 10px);width:42.2%;height:6.3%;border-radius:999px}

/* Crop only the outer white canvas so the address view fills the same frame as payment. */
.source-frame--address img{transform:scale(1.035);transform-origin:center}
.hit-list-first{left:13.3%;top:11.9%;width:73.5%;height:40.5%;border-radius:18px}
.hit-list-favorite{left:37.8%;right:auto;top:12.6%;width:2.6%;height:7%;border-radius:50%}

.hit-chat-call{left:61%;top:2.4%;width:7%;height:5.7%;border-radius:12px}
.hit-chat-video{left:70.5%;top:3.1%;width:8%;height:5.2%;border-radius:12px}
.hit-chat-attach{left:4.3%;bottom:1.7%;width:7.5%;height:6.5%;border-radius:14px}
.hit-chat-composer{left:16.7%;bottom:1.7%;width:66.6%;height:7.2%;border-radius:999px}
.hit-chat-send{right:4.3%;bottom:1.7%;width:7.5%;height:6.5%;border-radius:14px}

.hit-summary-next{left:10.7%;top:90%;width:78%;height:6.2%;border-radius:12px}
.hit-address-toggle{right:7%;top:20.4%;width:15.5%;height:4.5%;border-radius:999px}
.hit-address-next{left:14%;top:calc(84.6% + 5px);width:72%;height:7.6%;border-radius:12px}
.hit-payment-method{left:8.2%;top:43.5%;width:83.3%;height:10.3%;border-radius:15px}
.hit-payment-pay{left:7.1%;top:88.7%;width:85.7%;height:7.1%;border-radius:12px}
.hit-done-invoice{left:5.2%;top:87.3%;width:42.2%;height:7.6%;border-radius:12px}
.hit-done-return{right:5.4%;top:87.3%;width:44.2%;height:7.6%;border-radius:12px}
.hit-payment-pay,.hit-done-return{background:transparent;box-shadow:inset 0 0 0 2px rgba(39,88,104,.68)}
.hit-payment-pay:before,.hit-done-return:before{content:none;display:none}
.hit-payment-pay:hover,.hit-payment-pay:focus-visible,.hit-done-return:hover,.hit-done-return:focus-visible{background:rgba(89,149,168,.07);box-shadow:inset 0 0 0 3px rgba(39,88,104,.88)}
.hit-payment-pay.is-active,.hit-done-return.is-active{background:rgba(38,167,125,.06);box-shadow:inset 0 0 0 3px rgba(38,167,125,.82)}

/* Interactive full profile rebuilt from the source screen. */
.om-profile-ui{padding:28px;background:#fffcfa;color:var(--teal)}
.om-profile-ui button{font:inherit}
.om-profile-summary{display:grid;grid-template-columns:250px minmax(0,1fr) 220px;gap:28px;padding:24px;border:1px solid #e6ded9;border-radius:20px;background:#fff;box-shadow:0 12px 34px rgba(39,88,104,.09)}
.om-profile-photo{position:relative;min-height:280px;overflow:hidden;border-radius:16px;background:#dce9ec}
.om-profile-photo img{width:100%;height:100%;object-fit:cover;object-position:center top}
.om-profile-intro{min-width:0;padding:8px 0}
.om-profile-title{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:14px;border-bottom:1px solid #ddd4ce}
.om-profile-title h4,.om-profile-section h4{margin:0;color:#275868;font:600 34px/1.05 "Fira Sans",sans-serif}
.om-profile-title .eyebrow{margin-bottom:7px}
.om-rating{display:grid;place-items:center;min-width:64px;padding:9px;border-radius:12px;background:#f6f2ef;color:#32302e}
.om-rating b,.om-rating small{display:block}.om-rating small{font-size:9px;color:#817771}
.om-profile-meta{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}
.om-profile-meta span{padding:7px 10px;border-radius:999px;background:#eef5f6;font-size:11px;font-weight:700}
.om-profile-intro>p{margin:0;color:#514b47;font-size:14px}
.om-profile-extra{margin-top:10px!important}
.om-text-button{margin-top:14px;padding:0;border:0;background:none;color:#275868;font-weight:800;cursor:pointer}
.om-text-button span{display:inline-block;margin-left:6px;transition:transform .2s}
.om-text-button[aria-expanded="true"] span{transform:rotate(180deg)}
.om-profile-price{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:18px;border-radius:18px;background:#f8f4f1;text-align:center}
.om-profile-price strong{font-size:23px}.om-profile-price small{color:#817771}
.om-profile-price button,.om-about-contact button{min-height:46px;padding:10px 13px;border:1px solid #9fc6ce;border-radius:12px;background:#a8cfd7;color:#16333c;font-size:12px;font-weight:800;cursor:pointer}
.om-profile-price .om-favorite{margin-top:auto;border-color:#d8cfc9;background:#fff}
.om-profile-price .om-favorite[aria-pressed="true"]{border-color:#ff8c6f;background:#fff2ed;color:#b85038}
.om-profile-section{padding:72px 34px;border-bottom:1px solid #e5ddd8;scroll-margin-top:56px}
.om-profile-section>header{max-width:760px;margin-bottom:30px}.om-profile-section>header>p:not(.eyebrow){margin:10px 0 0;color:#746b65}
.om-booking-grid{display:grid;grid-template-columns:190px minmax(300px,1fr) 190px;gap:22px;align-items:start}
.om-selection-summary{min-height:180px;padding:20px;border-radius:18px;background:#faf7f5;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.om-selection-summary span,.om-times>span{color:#dd8e5e;font-size:9px;font-weight:800;letter-spacing:.12em}.om-selection-summary b{margin-top:12px;font-size:18px}.om-selection-summary small{margin-top:5px;color:#817771}
.om-calendar{padding:18px;border:1px solid #a8c9d1;border-radius:20px;background:#fff}
.om-calendar-head{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;text-align:center}.om-calendar-head button{width:38px;height:38px;border:0;border-radius:50%;background:#f1f6f7;color:#275868;cursor:pointer}.om-calendar-head b{font:400 24px Lora,serif}
.om-weekdays,.om-days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;text-align:center}.om-weekdays{margin:14px 0 7px}.om-weekdays span{font-size:10px;font-weight:800;color:#5995a8}
.om-days button{aspect-ratio:1;border:0;border-radius:50%;background:transparent;color:#6c7475;font-size:11px;cursor:pointer}.om-days button:disabled{opacity:.25}.om-days button.available{background:#a8c9d1;color:#16333c;font-weight:800}.om-days button.active{background:#275868;color:#fff;box-shadow:0 0 0 4px rgba(89,149,168,.2)}
.om-times{padding:18px;border-radius:18px;background:#faf7f5;text-align:center}.om-times>div{display:grid;gap:7px;margin:13px 0}.om-times>div button{min-height:34px;border:0;border-radius:9px;background:#cddfe4;color:#275868;font-size:11px;cursor:pointer}.om-times>div button.active{background:#275868;color:#fff}.om-book-button{width:100%;min-height:43px;border:0;border-radius:10px;background:#ff8c6f;color:#fff;font-size:11px;font-weight:800;cursor:pointer}.om-book-button:disabled{background:#dfd4ce;color:#8b817a;cursor:not-allowed}
.om-filter-row{display:flex;gap:8px;overflow:auto;margin-bottom:20px}.om-filter-row button{flex:0 0 auto;min-height:42px;padding:8px 14px;border:1px solid #a8c9d1;border-radius:999px;background:#fff;color:#275868;font-size:11px;font-weight:800;cursor:pointer}.om-filter-row button.active{background:#275868;color:#fff}
.om-experience-list{display:grid;gap:18px}.om-experience-card{padding:30px;border:1px solid #d8cfc9;border-radius:22px;background:#fff;box-shadow:0 14px 38px rgba(39,88,104,.08)}
.om-card-top{display:flex;justify-content:space-between;gap:20px;color:#756d68;font-size:10px}.om-card-top span{color:#dd8e5e;font-weight:800;letter-spacing:.1em}.om-experience-card h5{margin:22px 0 10px;color:#5995a8;font:500 25px "Fira Sans",sans-serif}.om-experience-card>p{color:#6b635c}
.om-review{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:24px;padding:14px 0;border-top:1px solid #e4dcd7;border-bottom:1px solid #e4dcd7}.om-review span,.om-review b{display:block}.om-review span{color:#5995a8;font-size:9px;font-weight:800;letter-spacing:.1em}.om-review b{margin-top:4px}.om-review button{min-height:40px;padding:8px 12px;border:1px solid #a8c9d1;border-radius:999px;background:#fff;color:#275868;font-size:10px;font-weight:800;cursor:pointer}.om-experience-card blockquote{margin:22px 0;color:#5e5752;font:italic 17px/1.55 Lora,serif}
.om-carousel-controls{display:flex;justify-content:space-between;gap:12px}.om-carousel-controls button{min-height:42px;padding:8px 14px;border:1px solid #d8cfc9;border-radius:12px;background:#f8f4f1;color:#275868;font-size:11px;font-weight:800;cursor:pointer}
.om-about-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.om-about-grid>div{display:flex;flex-direction:column;gap:7px}.om-about-grid>div>b{padding-bottom:10px;border-bottom:1px solid #e2dad5}.om-about-grid button{min-height:40px;padding:8px 10px;border:0;border-radius:10px;background:transparent;color:#4f4a47;text-align:left;cursor:pointer}.om-about-grid button:before{content:"○";margin-right:9px;color:#5995a8}.om-about-grid button.active{background:#eef5f6;color:#16333c;font-weight:700}.om-about-grid button.active:before{content:"✓"}
.om-about-contact{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:30px;padding:20px;border-radius:18px;background:#f6f2ef}.om-about-contact strong,.om-about-contact span{display:block}.om-about-contact span{margin-top:4px;color:#756d68;font-size:12px}
.om-location{border-bottom:0}.om-map{position:relative;width:100%;min-height:300px;overflow:hidden;border:0;border-radius:24px;background:linear-gradient(25deg,transparent 46%,rgba(255,255,255,.8) 47% 49%,transparent 50%),linear-gradient(155deg,transparent 43%,rgba(255,255,255,.75) 44% 47%,transparent 48%),#dce8d6;color:#275868;cursor:pointer}.om-map:before,.om-map:after{content:"";position:absolute;background:rgba(255,255,255,.85)}.om-map:before{left:11%;top:0;width:5px;height:100%;transform:rotate(25deg)}.om-map:after{left:0;top:62%;width:100%;height:4px;transform:rotate(-7deg)}.om-map-river{position:absolute;left:-5%;right:-5%;top:38%;height:90px;background:#9bc8d7;transform:rotate(-8deg);border-radius:50%}.om-map i{position:relative;z-index:2;display:grid;place-items:center;width:74px;height:74px;margin:auto;border:16px solid rgba(89,149,168,.25);border-radius:50%;background:#275868;color:#fff;font-size:25px;font-style:normal}.om-map b,.om-map small{position:relative;z-index:2;display:block;margin-top:10px}.om-map small{margin-top:2px}
.om-map.is-active{box-shadow:inset 0 0 0 3px #275868,0 14px 34px rgba(39,88,104,.18);background-color:#cfe1d1}
.om-map.is-active i{background:#ff8c6f;border-color:rgba(255,140,111,.24);box-shadow:0 10px 24px rgba(39,88,104,.22);font-size:0}
.om-map.is-active i:before{content:"✓";font-family:"Source Sans 3",sans-serif;font-size:28px;font-weight:800}
.om-map.is-active b{display:inline-block;margin-top:12px;padding:7px 12px;border-radius:999px;background:#275868;color:#fff}
.om-map.is-active small{color:#16333c;font-weight:800}
.om-map{isolation:isolate;background:#dfe8dc}
.om-map:before,.om-map:after,.om-map-river{display:none}
.om-map-image{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;opacity:.8;filter:saturate(.82) contrast(.96);transition:opacity .22s ease,filter .22s ease,transform .35s ease}
.om-map i{z-index:2}
.om-map b,.om-map small{z-index:2;width:max-content;max-width:calc(100% - 32px);margin-inline:auto;padding-inline:10px;border-radius:8px;background:rgba(255,255,255,.84);backdrop-filter:blur(8px)}
.om-map b{padding-top:5px}.om-map small{padding-bottom:5px}
.om-map.is-active .om-map-image{opacity:1;filter:saturate(1) contrast(1);transform:scale(1.015)}
.om-profile-ui button:hover{filter:brightness(.98)}.om-profile-ui button:focus-visible{outline:3px solid rgba(255,140,111,.55);outline-offset:3px}
@media(max-width:900px){.om-profile-summary{grid-template-columns:190px 1fr}.om-profile-price{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.om-profile-price strong,.om-profile-price small{grid-column:1/-1}.om-booking-grid{grid-template-columns:1fr 1fr}.om-selection-summary{grid-column:1/-1;min-height:110px}.om-about-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.om-profile-ui{padding:14px}.om-profile-summary{grid-template-columns:1fr;padding:16px}.om-profile-photo{min-height:300px}.om-profile-price{grid-template-columns:1fr}.om-profile-price strong,.om-profile-price small{grid-column:auto}.om-profile-section{padding:54px 10px}.om-profile-title{align-items:center}.om-profile-title h4,.om-profile-section h4{font-size:28px}.om-booking-grid,.om-about-grid{grid-template-columns:1fr}.om-selection-summary{grid-column:auto}.om-card-top,.om-review,.om-about-contact{align-items:flex-start;flex-direction:column}.om-review button,.om-about-contact button{width:100%}}

/* Mobile portrait: complete content without clipped inner panels. */
@media (max-width:780px) and (orientation:portrait){
  .final-cta{padding:28px 0 64px}
  .final-card{min-width:0;padding:30px 20px;border-radius:24px;gap:26px;overflow:hidden}
  .final-card>div{min-width:0}
  .final-card h2{max-width:100%;font-size:clamp(34px,10vw,46px);line-height:1;overflow-wrap:anywhere}
  .final-card p:not(.eyebrow){font-size:15px;overflow-wrap:anywhere}
  .final-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;width:100%}
  .final-actions .button{width:100%;min-width:0;margin-top:0;padding-inline:12px;text-align:center;white-space:normal}
  .full-profile{width:min(calc(100% - 24px),var(--container));max-width:100%;border-radius:22px}
  .full-profile__head{min-width:0;padding:20px 18px;gap:18px}
  .full-profile__head>div{min-width:0}.full-profile__head h3{font-size:26px;overflow-wrap:anywhere}.full-profile__head p:not(.eyebrow){font-size:13px;overflow-wrap:anywhere}
  .full-profile__close{max-width:100%}
  .profile-jump{position:relative;top:auto;max-width:100%;padding:10px;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}
  .profile-jump button{min-height:42px}
  .full-profile__viewport{height:auto;max-height:none;overflow:visible}
  .om-profile-ui{min-width:0;padding:12px}
  .om-profile-summary{grid-template-columns:minmax(0,1fr);min-width:0;gap:18px;padding:15px}
  .om-profile-photo{width:100%;min-height:0;aspect-ratio:1/1}
  .om-profile-intro,.om-profile-title>div,.om-profile-price{min-width:0}
  .om-profile-title{gap:12px}.om-profile-title h4{font-size:29px}
  .om-profile-meta span{max-width:100%;overflow-wrap:anywhere}
  .om-profile-price{grid-column:auto;grid-template-columns:minmax(0,1fr)}
  .om-profile-price strong,.om-profile-price small{grid-column:auto}
  .om-profile-price button{width:100%;white-space:normal}
  .om-profile-section{min-width:0;padding:50px 6px}
  .om-profile-section>header{min-width:0}.om-profile-section h4{font-size:28px;overflow-wrap:anywhere}
  .om-booking-grid{grid-template-columns:minmax(0,1fr);gap:16px}
  .om-selection-summary{grid-column:auto;min-width:0}
  .om-calendar,.om-times,.om-experience-card{min-width:0;width:100%}
  .om-calendar{padding:13px}.om-calendar-head{grid-template-columns:38px minmax(0,1fr) 38px}.om-calendar-head b{font-size:20px}
  .om-weekdays,.om-days{gap:3px}.om-weekdays span{font-size:9px}.om-days button{min-width:0;padding:2px;font-size:10px}
  .om-times>div{grid-template-columns:repeat(2,minmax(0,1fr))}
  .om-filter-row{max-width:100%;padding-bottom:4px}
  .om-experience-card{padding:20px 16px}.om-card-top,.om-review,.om-about-contact{align-items:flex-start;flex-direction:column}.om-card-top>*{max-width:100%;overflow-wrap:anywhere}
  .om-review button,.om-about-contact button{width:100%;white-space:normal}
  .om-carousel-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.om-carousel-controls button{min-width:0;padding-inline:8px;white-space:normal}
  .om-about-grid{grid-template-columns:minmax(0,1fr);gap:18px}.om-about-grid>div{min-width:0}.om-about-grid button{max-width:100%;overflow-wrap:anywhere}
  .om-map{min-height:230px}.om-map b,.om-map small{max-width:calc(100% - 24px)}
  .full-profile__footer{padding:14px 16px}.full-profile__footer span{max-width:100%;overflow-wrap:anywhere}
}
@media (max-width:430px) and (orientation:portrait){
  .final-actions{grid-template-columns:1fr}
  .final-card h2{font-size:36px}
}

/* Mobile landscape: use the available width while keeping every control visible. */
@media (orientation:landscape) and (max-width:1000px){
  .final-cta{padding:24px 0 50px}
  .final-card{grid-template-columns:minmax(0,1fr) minmax(190px,.42fr);align-items:center;min-width:0;padding:28px;border-radius:24px;gap:28px;overflow:hidden}
  .final-card>div{min-width:0}.final-card h2{font-size:clamp(34px,5vw,44px);line-height:1}.final-card p:not(.eyebrow){font-size:14px}
  .final-actions{display:grid;grid-template-columns:1fr;width:100%;gap:8px}.final-actions .button{width:100%;min-width:0;margin-top:0;padding-inline:12px;text-align:center;white-space:normal}
  .full-profile{max-width:calc(100% - 30px);border-radius:22px}
  .full-profile__head{min-width:0;padding:18px 20px;gap:20px}.full-profile__head>div{min-width:0}.full-profile__head h3{font-size:25px}.full-profile__head p:not(.eyebrow){font-size:12px}
  .profile-jump{position:relative;top:auto;max-width:100%;overflow-x:auto;padding:9px 12px;scrollbar-width:thin}
  .full-profile__viewport{height:auto;max-height:none;overflow:visible}
  .om-profile-ui{min-width:0;padding:14px}
  .om-profile-summary{grid-template-columns:160px minmax(0,1fr);min-width:0;gap:18px;padding:16px}.om-profile-photo{min-height:230px}.om-profile-price{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr))}.om-profile-price strong,.om-profile-price small{grid-column:1/-1}
  .om-profile-section{min-width:0;padding:50px 18px}
  .om-booking-grid{grid-template-columns:minmax(0,1.25fr) minmax(170px,.75fr);gap:16px}.om-selection-summary{grid-column:1/-1;min-height:96px}.om-calendar,.om-times{min-width:0}
  .om-about-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.om-about-grid>div{min-width:0}.om-about-grid button{max-width:100%;overflow-wrap:anywhere}
  .om-card-top>*{max-width:100%;overflow-wrap:anywhere}.om-map{min-height:240px}
  .full-profile__footer{flex-wrap:wrap}.full-profile__footer span{max-width:100%;overflow-wrap:anywhere}
}
@media (orientation:landscape) and (max-width:680px){
  .final-card{grid-template-columns:1fr}.final-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
  .om-profile-summary,.om-booking-grid,.om-about-grid{grid-template-columns:minmax(0,1fr)}
  .om-selection-summary,.om-profile-price{grid-column:auto}.om-profile-price{grid-template-columns:minmax(0,1fr)}.om-profile-price strong,.om-profile-price small{grid-column:auto}
}

/* Mobile portrait and landscape: the journey stays in one swipeable row. */
@media (max-width:840px), (hover:none) and (pointer:coarse) and (orientation:landscape) and (max-width:1199px){
  html,body,main{width:100%;max-width:100%;min-width:0;overflow-x:hidden}
  body{position:relative}
  .site-header,main,.screen-section,.section,.final-cta,.footer{max-width:100%;overflow-x:clip}
  .container{width:100%;max-width:100%;min-width:0;padding-inline:clamp(12px,4vw,24px)}
  .hero-grid,.screen-heading,.screen-copy,.screen-stage,.screen-stage--wide,.screen-stage--phone,.phone-presentation,.source-frame,.interaction-panel,.interaction-card,.full-profile,.full-profile__canvas,.final-card,.problem-intro,.problem-grid,.journey,.om-profile-ui,.om-profile-summary,.om-profile-intro,.om-profile-price,.om-booking-grid,.om-calendar,.om-times,.om-experience-list,.om-experience-card,.om-about-grid,.om-map{min-width:0;max-width:100%}
  .screen-stage--phone>*{min-width:0}
  .hit-hero-search{top:calc(64% - 4px)}
  .om-profile-title h4{font-size:clamp(21px,6vw,26px)}
  html.mobile-menu-open .mobile-quick-nav{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
  .full-profile.reveal{opacity:1;transform:none}
  .full-profile__viewport .om-map-image{position:absolute;inset:0;display:block;width:100%;max-width:none;height:100%;object-fit:cover;object-position:center}
  .om-map{background:#dfe8dc}
  .journey{display:flex;grid-template-columns:none;width:min(calc(100% - 30px),var(--container));max-width:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:0;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
  .journey a{flex:0 0 clamp(138px,42vw,174px);min-width:0;min-height:112px;border-right:1px solid var(--line);border-bottom:0;scroll-snap-align:start}
  .journey a:last-child{border-right:0}
  .journey::-webkit-scrollbar{height:5px}.journey::-webkit-scrollbar-track{background:#f1ece8}.journey::-webkit-scrollbar-thumb{background:#a8c9d1;border-radius:999px}
}
