.page-header{ position: sticky; top: 0; z-index: 20; display: flex; align-items: center; gap: 24px; min-height: 74px; padding: 0 max(24px, calc((100vw - 1120px) / 2)); background: rgba(255,255,255,.94); border-bottom: 1px solid var(--line); backdrop-filter: blur(12px); }
.page-header .brand img{ width: 132px; }
.page-header nav{ display: flex; align-items: center; gap: 18px; margin-left: auto; }
.page-header nav a{ color: var(--harbour); font-size: .86rem; font-weight: 750; text-decoration: none; }
.page-header nav a:hover,.page-header nav a[aria-current="page"]{ color: var(--tide); }
.page-header .button{ margin-left: 4px; }
.header-actions{ display: flex; align-items: center; gap: 14px; margin-left: 20px; }
.lang-switch{ display: inline-flex; align-items: center; overflow: hidden; border: 1px solid var(--line); border-radius: 999px; background: var(--white); font: 800 .68rem/1 var(--ui); letter-spacing: .06em; }
.lang-switch__on,.lang-switch__off{ padding: 7px 10px; }
.lang-switch__on{ background: var(--harbour); color: var(--white); }
.lang-switch__off{ color: var(--muted); text-decoration: none; }
.lang-switch__off:hover{ background: var(--foam); color: var(--harbour); }
.section-head .eyebrow{ color: var(--tide); font-size: 11px; }
.section-head .eyebrow--warm{ color: var(--apricot); }
.page-header{ position: sticky; }
.mobile-menu{ display: none; border: 1px solid var(--line); border-radius: 9px; background: var(--white); color: var(--harbour); min-width: 42px; min-height: 40px; font-size: 20px; cursor: pointer; }
.skip-link{ position: fixed; left: 16px; top: 10px; z-index: 100; padding: 10px 14px; border-radius: 8px; background: var(--harbour); color: #fff; transform: translateY(-160%); transition: transform .2s; }
.skip-link:focus{ transform: translateY(0); }
*:focus-visible{ outline: 3px solid var(--apricot); outline-offset: 3px; }
.page-hero{ padding: clamp(70px, 12vw, 148px) 0 70px; }
.page-hero--split{ display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, .76fr); align-items: center; gap: clamp(40px, 8vw, 120px); }
.page-hero h1{ max-width: 760px; margin: 10px 0 18px; font-size: clamp(3.2rem, 7vw, 6.5rem); line-height: .93; letter-spacing: -.065em; }
.page-hero h1 span{ color: var(--tide); }
.page-hero .lede{ max-width: 600px; font-size: clamp(1.05rem, 1.6vw, 1.3rem); color: var(--muted); }
.page-actions{ display: flex; flex-wrap: wrap; align-items: center; gap: 18px; margin-top: 28px; }
.subnav{ display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.subnav a{ padding: 21px 16px; color: var(--harbour); font-weight: 750; text-decoration: none; border-right: 1px solid var(--line); }
.subnav a:last-child{ border-right: 0; }
.subnav a:hover{ background: var(--foam); color: var(--tide); }
.overview-grid{ display: grid; grid-template-columns: repeat(4, 1fr); gap: 15px; }
.overview-card{ min-height: 250px; padding: 26px; border: 1px solid var(--line); border-radius: 20px; background: var(--white); color: var(--harbour); text-decoration: none; transition: transform .2s, box-shadow .2s; }
.overview-card:hover{ transform: translateY(-4px); box-shadow: 0 18px 45px rgba(19,43,49,.1); }
.overview-card span{ display: block; margin-bottom: 30px; color: var(--tide); font-size: .78rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.overview-card h2{ margin: 0 0 10px; font-size: 1.65rem; }
.overview-card p{ margin: 0; color: var(--muted); }
.overview-card b{ display: block; margin-top: 24px; color: var(--tide); }
.page-section{ padding: clamp(70px, 10vw, 120px) 0; }
.page-section--soft{ background: var(--foam); }
.page-section--harbour{ background: var(--harbour); color: var(--white); }
.section-layout{ display: grid; grid-template-columns: minmax(0, .8fr) minmax(320px, 1fr); align-items: center; gap: clamp(30px, 7vw, 100px); }
.section-layout--reverse > :first-child{ order: 2; }
.section-layout h2{ margin: 8px 0 16px; font-size: clamp(2.3rem, 4vw, 4.3rem); line-height: .98; letter-spacing: -.05em; }
.section-layout > div > p:not(.eyebrow){ color: var(--muted); font-size: 1.08rem; }
.photo-frame{ position: relative; overflow: hidden; min-height: 470px; border-radius: 24px; background: var(--harbour); }
.photo-frame img{ width: 100%; height: 100%; min-height: 470px; object-fit: cover; }
.photo-frame__tag{ position: absolute; right: 20px; bottom: 20px; padding: 10px 12px; border-radius: 999px; background: var(--white); color: var(--harbour); font-size: .8rem; font-weight: 800; }
.photo-frame__caption{ position: absolute; left: 20px; top: 20px; max-width: 270px; padding: 14px; border-radius: 12px; background: rgba(19,43,49,.88); color: var(--white); font-size: .85rem; }
.flow{ display: grid; gap: 12px; margin-top: 26px; }
.flow div{ display: grid; grid-template-columns: 32px 1fr; gap: 14px; align-items: start; padding: 15px; border-radius: 13px; background: var(--white); }
.flow b{ display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--harbour); color: var(--apricot); font-size: .75rem; }
.flow strong,.flow span{ display: block; }
.flow span{ margin-top: 3px; color: var(--muted); font-size: .9rem; }
.app-motion{ position: relative; min-height: 570px; padding: 18px; overflow: hidden; border-radius: 30px; background: #0d343e; box-shadow: 0 30px 80px rgba(10,47,58,.18); }
.app-motion:before{ content: ""; position: absolute; inset: -20% -25%; background: radial-gradient(circle, rgba(255,177,93,.22), transparent 47%); animation: glow 6s ease-in-out infinite; }
.app-phone{ position: relative; z-index: 1; width: min(100%, 330px); min-height: 540px; margin: auto; padding: 18px; border: 7px solid #f8f8f6; border-radius: 34px; background: #fff; box-shadow: 0 20px 40px rgba(0,0,0,.2); }
.app-phone__top{ display: flex; justify-content: space-between; align-items: center; color: var(--muted); font-size: .7rem; }
.app-phone h3,.app-phone__title{ margin: 20px 0 4px; font-family: var(--display); font-size: 1.55rem; font-weight: 700; letter-spacing: -.035em; }
.app-phone p{ margin: 0; color: var(--muted); font-size: .8rem; }
.app-pulse{ display: flex; align-items: center; gap: 8px; margin: 18px 0; padding: 10px; border-radius: 10px; background: #fff1df; color: #815013; font-size: .75rem; font-weight: 800; }
.app-pulse i{ width: 8px; height: 8px; border-radius: 50%; background: var(--apricot); animation: pulse 1.5s infinite; }
.task-line{ display: flex; align-items: center; gap: 9px; padding: 10px 0; border-bottom: 1px solid var(--line); font-size: .78rem; font-weight: 700; }
.task-line b{ display: grid; place-items: center; width: 19px; height: 19px; border-radius: 50%; background: #eaf5f0; color: #23735c; }
.upload-card{ position: absolute; right: 16px; bottom: 24px; z-index: 2; width: 178px; padding: 12px; border-radius: 14px; background: var(--harbour); color: #fff; box-shadow: 0 15px 35px rgba(0,0,0,.25); animation: uploadMove 5s ease-in-out infinite; }
.upload-card img{ display: block; width: 100%; height: 94px; margin-bottom: 9px; border-radius: 8px; object-fit: cover; }
.upload-card small{ color: #d3e0e3; }
.upload-card strong{ display: block; font-size: .8rem; }
.upload-card__bar{ height: 5px; margin-top: 8px; overflow: hidden; border-radius: 99px; background: #3c5e66; }
.upload-card__bar i{ display: block; width: 72%; height: 100%; background: var(--apricot); animation: progress 5s ease-in-out infinite; }
.proof-stack{ position: relative; min-height: 520px; }
.proof-photo{ position: absolute; width: min(70%, 390px); overflow: hidden; border: 8px solid #fff; border-radius: 20px; box-shadow: 0 20px 45px rgba(10,47,58,.18); }
.proof-photo img{ display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; }
.proof-photo small{ display: block; padding: 10px; background: #fff; color: var(--harbour); font-weight: 800; }
.proof-photo:first-child{ top: 20px; left: 0; transform: rotate(-4deg); }
.proof-photo:nth-child(2){ right: 0; bottom: 20px; transform: rotate(5deg); }
.proof-stamp{ position: absolute; z-index: 2; top: 47%; left: 33%; padding: 12px 15px; border-radius: 999px; background: var(--harbour); color: var(--white); font-size: .77rem; font-weight: 800; box-shadow: 0 12px 28px rgba(10,47,58,.2); }
.article-grid{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.article-grid article{ padding: 24px; border: 1px solid var(--line); border-radius: 18px; background: var(--white); }
.article-grid h3{ margin: 8px 0; font-size: 1.3rem; }
.article-grid p{ margin: 0; color: var(--muted); }
.article-grid span{ color: var(--tide); font-size: .75rem; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.answer-block{ max-width: 860px; padding: clamp(25px, 4vw, 44px); border-left: 5px solid var(--apricot); border-radius: 0 20px 20px 0; background: var(--foam); }
.answer-block h2{ margin: 0 0 14px; font-size: clamp(1.8rem, 3vw, 2.8rem); line-height: 1.05; letter-spacing: -.04em; }
.answer-block p{ margin: 0; color: var(--harbour); font-size: 1.05rem; line-height: 1.7; }
.fact-table{ width: 100%; margin-top: 28px; border-collapse: collapse; overflow: hidden; border: 1px solid var(--line); border-radius: 16px; background: var(--white); }
.fact-table th,.fact-table td{ padding: 16px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; }
.fact-table tr:last-child td{ border-bottom: 0; }
.fact-table th{ width: 31%; color: var(--harbour); background: var(--foam); font-size: .9rem; }
.fact-table td{ color: var(--muted); }
.faq-grid{ display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
.faq-grid details{ padding: 20px; border: 1px solid var(--line); border-radius: 16px; background: var(--white); }
.faq-grid summary{ cursor: pointer; color: var(--harbour); font-weight: 800; }
.faq-grid p{ margin: 13px 0 0; color: var(--muted); line-height: 1.55; }
.content-callout{ display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 24px; padding: 30px; border-radius: 22px; background: var(--harbour); color: var(--white); }
.content-callout h2{ margin: 0 0 8px; font-size: 2rem; }
.content-callout p{ margin: 0; color: #c8dcdf; }
.demo-controls{ display:flex; flex-wrap:wrap; gap:8px; margin:25px 0 18px; }
.demo-controls button{ padding:9px 12px; border:1px solid var(--line); border-radius:999px; background:var(--white); color:var(--harbour); font:700 .78rem var(--ui); cursor:pointer; }
.demo-controls button.is-active{ border-color:var(--harbour); background:var(--harbour); color:var(--white); }
.demo-panel[hidden]{ display:none; }
.demo-grid{ display:grid; grid-template-columns:minmax(0,1.1fr) minmax(270px,.9fr); gap:20px; align-items:start; }
.demo-window{ overflow:hidden; border:1px solid var(--line); border-radius:20px; background:var(--white); box-shadow:0 22px 50px rgba(19,43,49,.09); }
.demo-window__bar{ display:flex; align-items:center; gap:7px; padding:13px 16px; border-bottom:1px solid var(--line); background:var(--foam); }
.demo-window__bar i{ width:8px; height:8px; border-radius:50%; background:#a6b9b8; }
.demo-window__bar b{ margin-left:5px; color:var(--harbour); font-size:.76rem; }
.demo-window__bar span{ margin-left:auto; color:var(--muted); font-size:.7rem; }
.demo-dashboard{ padding:22px; }
.demo-dashboard h3,.demo-dashboard .mock-title{ margin:3px 0 0; font-family:var(--display); font-size:1.45rem; font-weight:700; letter-spacing:-.035em; color:var(--ink); }
.demo-dashboard>p{ margin:20px 0 8px; color:var(--muted); font-size:.74rem; font-weight:800; text-transform:uppercase; letter-spacing:.07em; }
.demo-job{ display:grid; grid-template-columns:64px 9px 1fr auto; align-items:center; gap:12px; padding:14px 0; border-top:1px solid var(--line); }
.demo-job time b,.demo-job time small,.demo-job div b,.demo-job div span{ display:block; }
.demo-job time b{ font-size:.78rem; }
.demo-job time small,.demo-job div span{ margin-top:2px; color:var(--muted); font-size:.67rem; }
.demo-job div b{ font-size:.82rem; }
.demo-job em{ padding:5px 7px; border-radius:999px; background:#e7f4ee; color:#20745d; font-size:.64rem; font-style:normal; font-weight:800; }
.demo-job .alert{ background:#fff0dc; color:#9a5d16; }
.demo-phone{ padding:10px; border:8px solid var(--harbour); border-radius:28px; background:var(--white); }
.demo-phone__top{ display:flex; justify-content:space-between; padding:5px 5px 17px; color:var(--muted); font-size:.66rem; }
.demo-phone h3,.demo-phone .mock-title{ margin:0; font-family:var(--display); font-size:1.38rem; font-weight:700; letter-spacing:-.035em; color:var(--ink); }
.demo-phone>p{ margin:5px 0 15px; color:var(--muted); font-size:.72rem; }
.demo-check{ display:flex; justify-content:space-between; gap:8px; padding:11px 2px; border-top:1px solid var(--line); color:var(--harbour); font-size:.76rem; font-weight:700; }
.demo-check b{ color:#20745d; }
.demo-proof-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:8px; margin-top:16px; }
.demo-proof-grid figure{ position:relative; height:115px; margin:0; overflow:hidden; border-radius:9px; background:var(--foam); }
.demo-proof-grid img{ width:100%; height:100%; object-fit:cover; }
.demo-proof-grid figcaption{ position:absolute; right:6px; bottom:6px; padding:4px 6px; border-radius:6px; background:rgba(19,43,49,.88); color:var(--white); font-size:.6rem; font-weight:800; }
.demo-money{ display:grid; gap:10px; }
.demo-money div{ display:flex; align-items:center; justify-content:space-between; padding:13px; border-radius:10px; background:var(--foam); }
.demo-money b,.demo-money span{ display:block; }
.demo-money b{ font-size:.8rem; }
.demo-money span{ margin-top:2px; color:var(--muted); font-size:.68rem; }
.demo-money em{ color:#9a5d16; font-size:.68rem; font-style:normal; font-weight:800; }
.page-footer{ padding: 34px 0; border-top: 1px solid var(--line); }
.page-footer .wrap{ display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px 22px; }
.page-footer img{ width: 122px; }
.page-footer p{ margin: 0; color: var(--muted); font-size: .85rem; }
.legal-page{ padding-bottom: 72px; }
.legal-page .page-hero{ padding-bottom: 42px; }
.legal-page .answer-block h2:not(:first-child){ margin-top: 30px; }
.legal-page .answer-block a{ color: var(--tide); font-weight: 800; }
@keyframes glow{ 50% { transform: translate(18%, 12%) scale(1.2); } }
@keyframes pulse{ 50% { transform: scale(1.65); opacity: .45; } }
@keyframes uploadMove{ 0%, 20% { opacity: 0; transform: translateY(40px) rotate(2deg); } 35%, 75% { opacity: 1; transform: translateY(0) rotate(2deg); } 100% { opacity: 0; transform: translateY(-20px) rotate(2deg); } }
@keyframes progress{ 0% { width: 0; } 55%, 100% { width: 100%; } }
@media (max-width: 940px){.page-header nav{ display: none; }.page-header nav.is-open{ display: flex; position: absolute; left: 14px; right: 14px; top: calc(100% + 8px); flex-direction: column; align-items: stretch; gap: 0; padding: 8px; border: 1px solid var(--line); border-radius: 14px; background: var(--white); box-shadow: 0 18px 35px rgba(19,43,49,.14); }.page-header nav.is-open a{ padding: 12px; border-radius: 8px; }.page-header nav.is-open a:hover{ background: var(--foam); }.mobile-menu{ display: inline-flex; align-items: center; justify-content: center; }.header-actions{ margin-left: auto; gap: 10px; }.page-hero--split,.section-layout,.demo-grid{ grid-template-columns: 1fr; }.section-layout--reverse > :first-child{ order: 0; }.overview-grid{ grid-template-columns: repeat(2, 1fr); }.subnav{ grid-template-columns: repeat(2, 1fr); }.subnav a:nth-child(2){ border-right: 0; }.article-grid{ grid-template-columns: 1fr; }}
@media (max-width: 580px){.page-header{ min-height: 64px; padding: 0 16px; }.page-header .brand img{ width: 112px; }.page-hero{ padding: 65px 0 50px; }.page-hero h1{ font-size: 3.35rem; }.overview-grid,.subnav,.faq-grid{ grid-template-columns: 1fr; }.subnav a{ border-right: 0; border-bottom: 1px solid var(--line); }.app-motion{ min-height: 530px; }.photo-frame,.photo-frame img{ min-height: 360px; }.proof-stack{ min-height: 420px; }.proof-photo{ width: 74%; }.fact-table th,.fact-table td{ padding: 13px; }.content-callout{ grid-template-columns: 1fr; }}
/* Homepage campaign layer: a connected,Greek-first story without adding visual noise. */
.home-hero{ padding-top: clamp(72px, 10vw, 124px); padding-bottom: 84px; }
.home-hero .lede{ max-width: 620px; }
.hero-note{ display: flex; align-items: center; gap: 8px; margin: 22px 0 0; color: var(--muted); font-size: .78rem; font-weight: 700; }
.status-dot{ display: inline-block; width: 9px; height: 9px; flex: 0 0 auto; border-radius: 50%; background: var(--apricot); }
.status-dot--ready{ background: var(--ready); box-shadow: 0 0 0 4px var(--ready-bg); }
.home-hero__visual{ position: relative; min-height: 470px; display: flex; align-items: center; justify-content: flex-end; }
.home-hero__image{ display: block; width: 100%; max-width: 610px; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 28px; box-shadow: 0 30px 80px rgba(10,47,58,.2); }
.hero-float{ position: absolute; display: flex; align-items: center; gap: 10px; padding: 13px 15px; border: 1px solid rgba(215,226,225,.9); border-radius: 14px; background: rgba(255,255,255,.95); box-shadow: 0 16px 38px rgba(10,47,58,.17); color: var(--harbour); }
.hero-float strong,.hero-float small{ display: block; }
.hero-float strong{ font: 700 .82rem var(--display); }
.hero-float small{ margin-top: 2px; color: var(--muted); font-size: .68rem; }
.hero-float--top{ top: 9%; left: -7%; }
.hero-float--bottom{ right: -4%; bottom: 6%; min-width: 240px; }
.hero-float--bottom b{ margin-left: auto; color: var(--ready); font: 800 1.1rem var(--display); }
.hero-float__icon{ display: grid; place-items: center; width: 31px; height: 31px; border-radius: 10px; background: var(--harbour); color: var(--apricot); font-weight: 800; }
.platform-band{ background: var(--white); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.platform-band__inner{ display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 20px 0; }
.platform-band p{ margin: 0; color: var(--muted); font-size: .78rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.platform-cloud{ display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 9px; }
.platform-badge{ display: inline-flex; align-items: center; gap: 7px; padding: 7px 10px 7px 7px; border: 1px solid var(--line); border-radius: 999px; background: var(--foam); color: var(--harbour); font-size: .77rem; font-weight: 800; }
.platform-badge i,.platform-badge img{ display: grid; place-items: center; width: 22px; height: 22px; border-radius: 50%; background: var(--harbour); color: #fff; font: 800 .72rem var(--display); font-style: normal; }
.platform-badge--airbnb i{ background: #ff5a5f; }
.platform-badge--booking i{ background: #003b95; }
.platform-badge--vrbo i{ background: #2b5fd9; }
.platform-badge--expedia i{ background: #f5a623; }
.platform-badge--mydata i{ background: var(--ready); }
.network-layout,.finance-layout{ display: grid; grid-template-columns: minmax(0, .9fr) minmax(380px, 1.1fr); gap: clamp(38px, 7vw, 100px); align-items: center; }
.network-layout h2,.finance-layout h2{ max-width: 620px; font-size: clamp(2.35rem, 4.6vw, 4.2rem); line-height: .98; }
.network-points{ display: grid; grid-template-columns: 1fr 1fr; gap: 11px; margin-top: 28px; }
.network-points div{ display: flex; align-items: center; gap: 10px; padding: 12px 13px; border: 1px solid var(--line); border-radius: 12px; background: var(--white); }
.network-points b{ display: grid; place-items: center; width: 27px; height: 27px; border-radius: 8px; background: var(--harbour); color: var(--apricot); font-size: .66rem; }
.network-points span{ color: var(--muted); font-size: .78rem; font-weight: 700; line-height: 1.25; }
.network-visual{ position: relative; min-height: 520px; overflow: hidden; border-radius: 28px; background: radial-gradient(circle at 50% 45%, #1f7380 0%, #0a2f3a 58%, #07232b 100%); box-shadow: 0 30px 80px rgba(10,47,58,.2); }
.network-orbit{ position: absolute; border: 1px solid rgba(207,235,232,.2); border-radius: 50%; transform: translate(-50%, -50%); left: 50%; top: 49%; }
.network-orbit--one{ width: 285px; height: 285px; }
.network-orbit--two{ width: 455px; height: 455px; border-color: rgba(255,176,90,.18); }
.network-line{ position: absolute; left: 50%; top: 49%; width: 41%; height: 1px; transform-origin: left center; background: linear-gradient(90deg, rgba(255,176,90,.86), rgba(207,235,232,.16)); }
.network-line--a{ transform: rotate(-145deg); }
.network-line--b{ transform: rotate(-95deg); }
.network-line--c{ transform: rotate(-35deg); }
.network-line--d{ transform: rotate(31deg); }
.network-line--e{ transform: rotate(95deg); }
.network-line--f{ transform: rotate(151deg); }
.network-node{ position: absolute; display: flex; align-items: center; gap: 8px; padding: 8px 10px; border: 1px solid rgba(207,235,232,.2); border-radius: 12px; background: rgba(9,40,49,.88); color: #fff; box-shadow: 0 12px 22px rgba(0,0,0,.2); font-size: .68rem; }
.network-node strong{ font-size: .7rem; }
.network-node small{ display: block; color: #b8d0d2; font-size: .57rem; }
.network-node i,.network-node > img{ display: grid; place-items: center; width: 23px; height: 23px; border-radius: 50%; background: var(--apricot); color: var(--harbour); font-style: normal; font-weight: 900; }
.network-node--hub{ flex-direction: column; gap: 2px; left: 50%; top: 49%; width: 112px; padding: 16px 10px; transform: translate(-50%, -50%); border-color: rgba(255,176,90,.72); background: var(--harbour); }
.network-node--hub img{ width: 24px; height: 24px; }
.network-node--hub strong{ font-size: .96rem; }
.network-node--hub small{ font-size: .62rem; }
.network-node--airbnb{ left: 10%; top: 17%; }
.network-node--booking{ right: 8%; top: 18%; }
.network-node--vrbo{ left: 5%; bottom: 18%; }
.network-node--expedia{ right: 5%; bottom: 18%; }
.network-node--manager{ left: 29%; top: 6%; }
.network-node--cleaner{ left: 29%; bottom: 7%; }
.network-node--tax{ right: 27%; bottom: 7%; }
.finance-section{ color: #fff; }
.finance-section h2{ color: #fff; }
.finance-lede{ max-width: 560px; color: #c5d7da; font-size: 1.08rem; }
.tax-card{ padding: 22px; border: 1px solid rgba(197,215,218,.25); border-radius: 20px; background: rgba(255,255,255,.08); box-shadow: 0 22px 48px rgba(0,0,0,.16); }
.tax-card__head{ display: flex; justify-content: space-between; gap: 12px; padding-bottom: 16px; border-bottom: 1px solid rgba(197,215,218,.2); color: #c5d7da; font-size: .72rem; }
.tax-card__head b{ color: #fff; }
.tax-row{ display: flex; justify-content: space-between; gap: 15px; padding: 15px 0; border-bottom: 1px solid rgba(197,215,218,.16); color: #d9e5e6; font-size: .88rem; }
.tax-row strong{ color: #fff; }
.tax-row--accent strong{ color: var(--apricot); }
.tax-row--muted{ color: #a9c0c3; }
.tax-total{ display: flex; justify-content: space-between; gap: 14px; margin-top: 17px; padding: 16px; border-radius: 13px; background: #fff; color: var(--harbour); font-weight: 800; }
.tax-total b{ color: var(--ready); font-size: 1.1rem; }
.tax-card>small{ display: block; margin-top: 12px; color: #a9c0c3; font-size: .68rem; }
.screen-showcase .section-head{ max-width: 720px; }
.screen-grid{ display: grid; grid-template-columns: 1.18fr .82fr; gap: 16px; align-items: start; }
.screen-card{ margin: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 20px; background: var(--white); box-shadow: 0 18px 42px rgba(19,43,49,.09); }
.screen-card--wide{ grid-row: span 2; }
.screen-card img{ display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; object-position: top left; background: var(--foam); }
.screen-card--wide img{ aspect-ratio: 16 / 9; }
.screen-card figcaption{ display: grid; gap: 3px; padding: 16px 18px 18px; }
.screen-card figcaption strong{ color: var(--harbour); font: 800 1rem var(--display); }
.screen-card figcaption span{ color: var(--muted); font-size: .82rem; line-height: 1.45; }
@media (max-width: 940px){.platform-band__inner{ display: block; }.platform-cloud{ justify-content: flex-start; margin-top: 12px; }.network-layout,.finance-layout{ grid-template-columns: 1fr; }.network-visual{ min-height: 480px; }.home-hero__visual{ min-height: 410px; }.hero-float--top{ left: 2%; }.hero-float--bottom{ right: 2%; }.screen-grid{ grid-template-columns: 1fr 1fr; }.screen-card--wide{ grid-column: 1 / -1; grid-row: auto; }}
@media (max-width: 580px){.home-hero{ padding-top: 52px; }.home-hero__visual{ min-height: 300px; }.home-hero__image{ border-radius: 20px; }.hero-float{ padding: 10px; }.hero-float--top{ top: 3%; left: 2%; }.hero-float--bottom{ right: 1%; bottom: 1%; min-width: 205px; }.hero-float strong{ font-size: .7rem; }.hero-float small{ font-size: .6rem; }.hero-float--bottom b{ font-size: .9rem; }.network-points{ grid-template-columns: 1fr; }.network-visual{ min-height: 410px; border-radius: 20px; }.network-orbit--one{ width: 210px; height: 210px; }.network-orbit--two{ width: 330px; height: 330px; }.network-node{ transform: scale(.9); }.network-node--hub{ transform: translate(-50%, -50%) scale(.9); }.network-node--manager{ left: 23%; }.network-node--cleaner{ left: 19%; }.network-node--tax{ right: 17%; }.tax-card{ padding: 16px; }.screen-grid{ grid-template-columns: 1fr; }.screen-card--wide{ grid-column: auto; }}
/* Data ownership,private guest check-in and tailor-made guide campaign. */
.ownership-section{ background: #eef5f3; }
.ownership-grid{ display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.ownership-screen{ margin: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 22px; background: var(--white); box-shadow: 0 22px 55px rgba(10,47,58,.09); }
.ownership-screen__top{ display: flex; align-items: center; gap: 13px; padding: 18px 20px; border-bottom: 1px solid var(--line); }
.ownership-screen__top strong,.ownership-screen__top small{ display: block; }
.ownership-screen__top strong{ color: var(--harbour); font: 800 1rem var(--display); }
.ownership-screen__top small{ margin-top: 3px; color: var(--muted); font-size: .72rem; }
.ownership-icon{ display: grid; place-items: center; width: 38px; height: 38px; flex: 0 0 auto; border-radius: 12px; background: var(--harbour); color: var(--apricot); font-size: 1.2rem; font-weight: 800; }
.ownership-icon--drive{ background: #e8f5ed; color: #43965d; }
.ownership-screen img{ display: block; width: 100%; aspect-ratio: 3.5 / 1; object-fit: cover; object-position: top left; background: var(--foam); }
.ownership-screen:nth-child(2) img{ aspect-ratio: 4.2 / 1; }
.ownership-screen figcaption{ padding: 11px 18px 14px; color: var(--muted); font-size: .69rem; }
.ownership-benefits{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 18px; }
.ownership-benefits article{ padding: 18px; border: 1px solid var(--line); border-radius: 16px; background: var(--white); }
.ownership-benefits b,.ownership-benefits span{ display: block; }
.ownership-benefits b{ margin-bottom: 6px; color: var(--harbour); }
.ownership-benefits span{ color: var(--muted); font-size: .82rem; line-height: 1.5; }
.ownership-note{ margin: 14px 0 0; color: var(--muted); font-size: .72rem; }
.guest-journey-layout,.guest-checkin-layout,.custom-guide-layout{ display: grid; grid-template-columns: minmax(0, .9fr) minmax(370px, 1.1fr); gap: clamp(34px, 7vw, 94px); align-items: center; }
.guest-journey-layout h2,.guest-checkin-layout h2,.custom-guide-layout h2{ margin: 8px 0 16px; font-size: clamp(2.35rem, 4.4vw, 4.1rem); line-height: .98; }
.guest-journey-mini{ position: relative; min-height: 430px; }
.guest-journey-mini > img{ position: absolute; inset: 0 7% 0 0; width: 93%; height: 100%; object-fit: cover; border-radius: 26px; box-shadow: 0 22px 56px rgba(10,47,58,.15); }
.guest-journey-mini__card{ position: absolute; right: 0; bottom: 30px; display: grid; width: min(82%, 365px); padding: 22px; border: 1px solid rgba(215,226,225,.9); border-radius: 19px; background: rgba(255,255,255,.96); box-shadow: 0 22px 48px rgba(10,47,58,.2); }
.guest-journey-mini__card span{ color: var(--tide); font-size: .7rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.guest-journey-mini__card b{ margin-top: 6px; color: var(--harbour); font: 800 1.5rem var(--display); }
.guest-journey-mini__card small{ margin: 3px 0 15px; color: var(--muted); }
.guest-journey-mini__card i{ position: relative; padding: 8px 0 8px 22px; border-top: 1px solid var(--line); color: var(--harbour); font-size: .78rem; font-style: normal; font-weight: 700; }
.guest-journey-mini__card i:before{ content: "✓"; position: absolute; left: 0; color: var(--ready); font-weight: 900; }
.guide-product-hero__photo{ min-height: 560px; }
.guide-product-hero__photo img{ min-height: 560px; }
.guest-checkin-layout{ align-items: center; }
.checkin-demo{ overflow: hidden; padding: 16px; border: 1px solid var(--line); border-radius: 25px; background: var(--white); box-shadow: 0 28px 70px rgba(10,47,58,.14); }
.checkin-demo__photo{ position: relative; overflow: hidden; height: 210px; border-radius: 17px; }
.checkin-demo__photo img{ width: 100%; height: 100%; object-fit: cover; }
.checkin-demo__photo:after{ content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 35%, rgba(8,34,41,.82)); }
.checkin-demo__photo div{ position: absolute; z-index: 1; left: 20px; bottom: 18px; color: #fff; }
.checkin-demo__photo span,.checkin-demo__photo strong,.checkin-demo__photo small{ display: block; }
.checkin-demo__photo span{ color: #d9e8e9; font-size: .68rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.checkin-demo__photo strong{ margin-top: 3px; font: 800 1.7rem var(--display); }
.checkin-demo__photo small{ color: #d9e8e9; }
.checkin-demo__stay{ display: grid; grid-template-columns: 1fr 18px 1fr .65fr; gap: 10px; align-items: center; padding: 18px 4px 12px; }
.checkin-demo__stay div{ display: grid; gap: 2px; }
.checkin-demo__stay span{ color: var(--muted); font-size: .62rem; font-weight: 800; text-transform: uppercase; letter-spacing: .07em; }
.checkin-demo__stay b{ color: var(--harbour); font-size: .86rem; }
.checkin-demo__stay i{ height: 1px; background: var(--line); }
.checkin-demo__fields{ display: grid; gap: 9px; margin-top: 4px; }
.checkin-demo__fields label{ display: grid; gap: 3px; padding: 11px 13px; border: 1px solid var(--line); border-radius: 11px; color: var(--harbour); font-size: .7rem; font-weight: 800; }
.checkin-demo__fields label span{ color: var(--muted); font-size: .76rem; font-weight: 500; }
.checkin-demo__fields .checkin-demo__check{ display: flex; align-items: center; gap: 9px; }
.checkin-demo__check i{ display: grid; place-items: center; width: 22px; height: 22px; border-radius: 7px; background: var(--ready); color: #fff; font-style: normal; }
.checkin-demo button{ width: 100%; margin-top: 12px; padding: 14px; border: 0; border-radius: 11px; background: var(--harbour); color: #fff; font: 800 .82rem var(--ui); }
.checkin-demo__privacy{ display: block; margin: 11px 6px 1px; color: var(--muted); font-size: .65rem; line-height: 1.45; }
.guide-feature-grid{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.guide-feature-grid article{ position: relative; overflow: hidden; padding: 0 0 24px; border: 1px solid var(--line); border-radius: 20px; background: var(--white); }
.guide-feature-grid article > span{ position: absolute; z-index: 2; top: 14px; left: 14px; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 11px; background: rgba(10,47,58,.9); color: var(--apricot); font-size: .72rem; font-weight: 800; }
.guide-feature-grid img{ width: 100%; height: 220px; object-fit: cover; }
.guide-feature-grid h3,.guide-feature-grid p{ margin-left: 22px; margin-right: 22px; }
.guide-feature-grid h3{ margin-top: 20px; margin-bottom: 8px; font-size: 1.35rem; }
.guide-feature-grid p{ margin-bottom: 0; color: var(--muted); }
.guide-preview-cta{ display: flex; align-items: center; justify-content: space-between; gap: 28px; margin-top: 22px; padding: 28px; border-radius: 22px; background: var(--harbour); color: #fff; }
.guide-preview-cta h2{ margin: 5px 0 8px; font-size: clamp(1.7rem, 3vw, 2.6rem); }
.guide-preview-cta p:not(.eyebrow){ margin: 0; color: #c8dcdf; }
.custom-guide-layout{ color: #fff; }
.custom-guide-layout > div:first-child > p:not(.eyebrow){ color: #c5d7da; }
.custom-guide-options{ display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.custom-guide-options article{ padding: 24px; border: 1px solid rgba(215,226,225,.22); border-radius: 18px; background: rgba(255,255,255,.08); }
.custom-guide-options span{ color: var(--apricot); font-size: .7rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.custom-guide-options h3{ margin: 10px 0 8px; color: #fff; font-size: 1.35rem; }
.custom-guide-options p{ margin: 0; color: #c5d7da; }
@media (max-width: 940px){.ownership-grid,.guest-journey-layout,.guest-checkin-layout,.custom-guide-layout{ grid-template-columns: 1fr; }.ownership-benefits,.guide-feature-grid{ grid-template-columns: 1fr; }.guide-feature-grid article{ display: grid; grid-template-columns: 180px 1fr; grid-template-rows: auto auto; padding: 0; }.guide-feature-grid img{ grid-row: 1 / 3; width: 180px; height: 100%; min-height: 210px; }.guide-feature-grid h3,.guide-feature-grid p{ margin-left: 22px; }.guide-feature-grid h3{ align-self: end; }.guide-feature-grid p{ margin-bottom: 22px; }.custom-guide-options{ grid-template-columns: 1fr 1fr; }}
@media (max-width: 580px){.ownership-grid,.ownership-benefits,.custom-guide-options{ grid-template-columns: 1fr; }.ownership-screen img,.ownership-screen:nth-child(2) img{ aspect-ratio: auto; }.ownership-screen__top{ align-items: flex-start; }.guest-journey-mini{ min-height: 370px; }.guest-journey-mini__card{ bottom: 14px; width: 90%; }.checkin-demo__stay{ grid-template-columns: 1fr 12px 1fr; }.checkin-demo__stay div:last-child{ grid-column: 1 / -1; }.guide-feature-grid article{ display: block; padding-bottom: 22px; }.guide-feature-grid img{ width: 100%; height: 200px; min-height: 0; }.guide-preview-cta{ align-items: flex-start; flex-direction: column; }}
@media (prefers-reduced-motion: reduce){*,*::before,*::after{ animation-duration: .01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .01ms !important; }}