.icon-container{width:48px;height:48px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:var(--container);color:var(--primary)}
.icon-container-large{width:64px;height:64px}
.icon-container-large .ui-icon{width:30px;height:30px}

.primary-button,.secondary-button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:11px 20px;border-radius:14px;font-size:var(--rds-type-action-size);font-weight:var(--rds-type-action-weight);line-height:var(--rds-type-action-line-height);text-decoration:none;cursor:pointer;transition:background-color 160ms ease,border-color 160ms ease,color 160ms ease,transform 160ms ease}
.primary-button{border:2px solid var(--text);background:var(--text);color:var(--surface)}
.primary-button:hover{border-color:var(--primary-pressed);background:var(--primary-pressed);color:var(--on-primary);transform:translateY(-1px)}
.secondary-button{border:1px solid var(--border);background:var(--surface);color:var(--text)}
.secondary-button:hover{border-color:var(--primary);color:var(--primary-pressed);transform:translateY(-1px)}
.primary-button:active,.secondary-button:active{transform:translateY(0)}

main{min-height:68vh;flex:1 0 auto}
.content-width{max-width:1240px;margin:auto;padding-left:32px;padding-right:32px}
.eyebrow{display:block;color:var(--primary-pressed);font-size:var(--rds-type-label-size);font-weight:var(--rds-type-label-weight);letter-spacing:var(--rds-type-label-letter-spacing);line-height:var(--rds-type-label-line-height);text-transform:uppercase}

.marketing-home-page{--marketing-hero-glow-color:color-mix(in srgb,var(--primary) 15%,transparent);--marketing-divider-width:210px;overflow-x:clip;background:var(--bg)}
.marketing-home-page .site-header{border-bottom:0;background:transparent}
.marketing-home{background:transparent}
.marketing-intro{position:relative;display:grid;place-items:center;padding:40px 0 72px;background:transparent;text-align:center;isolation:isolate}
.marketing-intro::before{content:'';position:absolute;z-index:-1;top:-150px;left:50%;width:min(860px,100%);height:700px;background:radial-gradient(ellipse at center,var(--marketing-hero-glow-color),transparent 68%);transform:translateX(-50%);pointer-events:none}
.marketing-intro-inner{width:100%}
.marketing-hero-mark{width:184px;height:184px;position:relative;display:grid;place-items:center;margin:0 auto 18px}
.marketing-hero-mark::before,.marketing-hero-mark::after{content:'';position:absolute;inset:12%;border-radius:50%;background:var(--primary);opacity:.14;filter:blur(38px)}
.marketing-hero-mark::after{inset:30%;opacity:.28;filter:blur(22px)}
.marketing-hero-mark img{width:148px;height:148px;position:relative;object-fit:contain;filter:drop-shadow(0 0 14px color-mix(in srgb,var(--primary) 30%,transparent))}
.development-status{display:inline-flex;align-items:center;justify-content:center;gap:11px;margin:0;color:var(--muted);font-size:var(--rds-type-label-size);font-weight:var(--rds-type-label-weight);letter-spacing:var(--rds-type-label-letter-spacing);line-height:var(--rds-type-label-line-height);text-transform:uppercase;white-space:nowrap}
.development-status-dot{width:10px;height:10px;flex:0 0 auto;border-radius:50%;background:var(--primary)}
.marketing-intro h1{max-width:1200px;margin:34px auto 0;text-align:center}
.marketing-intro h1 span{display:block}
.marketing-lead{max-width:960px;margin:40px auto 0;color:var(--muted);font-size:var(--rds-type-lead-size);font-weight:var(--rds-type-lead-weight);line-height:var(--rds-type-lead-line-height);text-wrap:balance}
.availability-button{gap:8px;margin-top:36px;border-color:var(--primary);border-radius:999px;background:var(--primary);color:var(--on-primary)}
.availability-button:hover{border-color:var(--primary-pressed);background:var(--primary-pressed);color:var(--on-primary)}
.product-update{position:relative;padding:32px 0 80px;background:transparent}
.product-update{scroll-margin-top:24px}
.product-update::before{content:'';position:absolute;top:0;left:50%;width:min(calc(100% - 40px),var(--marketing-divider-width));height:1px;background:var(--border);transform:translateX(-50%)}
.product-update-grid{text-align:center}
.product-update-label{max-width:820px;margin:0 auto 24px;color:var(--primary);font-size:var(--rds-type-label-size);font-weight:var(--rds-type-label-weight);letter-spacing:var(--rds-type-label-letter-spacing);line-height:var(--rds-type-label-line-height);text-align:center}
.product-update-copy{max-width:820px;margin:auto}
.product-update-copy h2{margin:0 0 44px;font-size:var(--rds-type-section-title-size);font-weight:var(--rds-type-section-title-weight);letter-spacing:var(--rds-type-section-title-letter-spacing);line-height:var(--rds-type-section-title-line-height);text-align:center}
.product-update-copy p{max-width:700px;margin:0 auto;color:var(--muted);font-size:var(--rds-type-feature-body-size);font-weight:var(--rds-type-feature-body-weight);line-height:var(--rds-type-feature-body-line-height);text-align:left;text-wrap:pretty}
.product-update-copy p+p{margin-top:48px}
.product-update-copy strong{color:var(--text);font-weight:700}

@media(prefers-color-scheme:dark){
  :root:not([data-theme=light]) .marketing-home-page{--marketing-hero-glow-color:color-mix(in srgb,var(--primary) 12%,transparent)}
}
:root[data-theme=dark] .marketing-home-page{--marketing-hero-glow-color:color-mix(in srgb,var(--primary) 12%,transparent)}

.page-hero{background:var(--bg)}
.page-hero .content-width{max-width:1240px;padding-top:54px;padding-bottom:24px}
.page-hero h1{max-width:18ch;margin:10px 0 14px}
.page-hero p{max-width:680px;margin:0;color:var(--muted);font-size:var(--rds-type-feature-body-size);font-weight:var(--rds-type-feature-body-weight);line-height:var(--rds-type-feature-body-line-height)}
.page-section{padding:28px 0 88px}
.page-section>.content-width{max-width:1240px}

.destination-list{overflow:hidden;border:1px solid var(--border);border-radius:16px;background:transparent;box-shadow:var(--shadow-soft)}
.destination-row{min-height:88px;display:flex;align-items:center;gap:16px;padding:17px 18px;color:var(--text);text-decoration:none}
.destination-row+.destination-row{border-top:1px solid var(--border-subtle)}
.destination-copy{min-width:0;flex:1}
.destination-copy strong{display:block;font-size:var(--rds-type-subsection-title-size);font-weight:var(--rds-type-subsection-title-weight);letter-spacing:var(--rds-type-subsection-title-letter-spacing);line-height:var(--rds-type-subsection-title-line-height)}
.destination-copy p{margin:4px 0 0;color:var(--muted);font-size:14px;line-height:1.45}
.destination-chevron{width:24px;height:24px;flex:0 0 auto;color:var(--muted);transition:color 160ms ease,transform 160ms ease}
a.destination-row:hover{background:var(--container)}
a.destination-row:hover .destination-chevron{color:var(--primary);transform:translateX(2px)}
.destination-row.is-static{cursor:default}
.destination-status{color:var(--muted);font-size:12px;font-weight:800}
.destination-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;overflow:visible;border:0;border-radius:0;box-shadow:none}
.destination-card-grid .destination-row{min-height:176px;display:grid;grid-template-columns:48px minmax(0,1fr) auto;grid-template-rows:48px auto 1fr;align-items:center;gap:14px;padding:20px;border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-soft)}
.destination-card-grid .destination-row+.destination-row{border-top-color:var(--border)}
.destination-card-grid .destination-copy{display:contents}
.destination-card-grid .destination-copy strong{grid-column:2;grid-row:1}
.destination-card-grid .destination-copy p{grid-column:1/3;grid-row:2;margin:0}
.destination-card-grid .destination-chevron{grid-column:3;grid-row:1/-1;align-self:center;justify-self:end}
.destination-card-grid .destination-status{grid-column:1/-1;grid-row:3;align-self:end;justify-self:end}

.article-layout .article{max-width:760px}
.article h2{margin:0 0 16px;font-size:var(--rds-type-section-title-size);font-weight:var(--rds-type-section-title-weight);letter-spacing:var(--rds-type-section-title-letter-spacing);line-height:var(--rds-type-section-title-line-height)}
.article p,.article li{color:var(--muted)}
.steps{overflow:hidden;border:1px solid var(--border);border-radius:16px;background:transparent;box-shadow:var(--shadow-soft)}
.step{display:grid;grid-template-columns:38px 1fr;gap:16px;padding:20px}
.step+.step{border-top:1px solid var(--border-subtle)}
.step-number{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:var(--container);color:var(--primary-pressed);font-weight:800}
.step h3{margin:2px 0 5px;font-size:var(--rds-type-subsection-title-size);font-weight:var(--rds-type-subsection-title-weight);letter-spacing:var(--rds-type-subsection-title-letter-spacing);line-height:var(--rds-type-subsection-title-line-height)}
.step p{margin:0;color:var(--muted);font-size:15px;line-height:1.5}

.faq-list{display:grid;gap:12px}
.faq-list details,.disclosure-card{overflow:hidden;border:1px solid var(--border);border-radius:16px;background:transparent;box-shadow:var(--shadow-soft)}
.faq-list summary,.disclosure-card summary{min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;color:var(--text);cursor:pointer;font-size:16px;font-weight:800;list-style:none}
.faq-list summary::marker,.disclosure-card summary::marker{content:''}
.faq-list summary::-webkit-details-marker,.disclosure-card summary::-webkit-details-marker{display:none}
.faq-list details[open] summary,.disclosure-card[open] summary{border-bottom:1px solid var(--border-subtle)}
.faq-list details>p{margin:0;padding:16px 18px 20px;color:var(--muted)}
.disclosure-body{padding:16px 18px 20px;color:var(--muted);font-size:14px}
.disclosure-body ul{margin:0;padding-left:20px}

.contact-intro{max-width:680px;margin-bottom:24px;color:var(--muted)}
.email-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.contact-card{display:block;padding:20px;border:1px solid var(--border);border-radius:16px;background:transparent;box-shadow:var(--shadow-soft);color:var(--text)}
.email-card{text-decoration:none;transition:border-color 160ms ease,transform 160ms ease}
.email-card:hover{border-color:var(--primary);transform:translateY(-2px)}
.contact-card-heading{display:flex;align-items:center;gap:14px}
.contact-card strong{font-size:var(--rds-type-subsection-title-size);font-weight:var(--rds-type-subsection-title-weight);letter-spacing:var(--rds-type-subsection-title-letter-spacing);line-height:var(--rds-type-subsection-title-line-height)}
.contact-card p{margin:14px 0 0;color:var(--muted);font-size:14px;line-height:1.5}
.email-address{display:block;margin-top:14px;color:var(--primary-pressed);font-weight:800;overflow-wrap:anywhere}
.support-tips-card ul{margin:14px 0 0;padding-left:20px;color:var(--muted);font-size:14px}
.support-tips-card li+li{margin-top:4px}
.safety-note{display:flex;align-items:flex-start;gap:10px;margin:20px 0 0;color:var(--muted);font-size:14px}
.safety-note .ui-icon{flex:0 0 auto;color:var(--primary)}

.empty-state{min-height:620px;display:grid;place-items:center;padding:54px 20px;text-align:center}
.empty-state-inner{max-width:420px}
.empty-state .icon-container{margin:0 auto 20px}
.empty-state h1{margin:0}
.empty-state p{margin:14px 0 24px;color:var(--muted)}

@media(max-width:1000px){
  .destination-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .content-width{padding-left:20px;padding-right:20px}
  .marketing-home-page{--marketing-divider-width:170px}
  .marketing-intro{min-height:auto;padding:40px 0 56px}
  .marketing-intro::before{top:-130px;width:100%;height:560px}
  .marketing-hero-mark{width:140px;height:140px;margin-bottom:18px}
  .marketing-hero-mark::before{filter:blur(30px)}
  .marketing-hero-mark img{width:112px;height:112px}
  .marketing-intro h1{margin-top:30px}
  .marketing-intro h1 span:last-child{text-wrap:balance}
  .marketing-lead{margin-top:30px}
  .availability-button{margin-top:32px}
  .product-update{padding:28px 0 56px}
  .product-update-label{margin-bottom:24px}
  .product-update-copy h2{margin-bottom:30px}
  .product-update-copy p+p{margin-top:32px}
  .page-hero .content-width{padding-top:38px;padding-bottom:18px}
  .page-section{padding:22px 0 64px}
  .email-list{grid-template-columns:1fr}
  .destination-card-grid{display:block;overflow:hidden;border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-soft)}
  .destination-card-grid .destination-row{min-height:88px;display:flex;align-items:center;gap:16px;padding:17px 18px;border:0;border-radius:0;box-shadow:none}
  .destination-card-grid .destination-row+.destination-row{border-top:1px solid var(--border-subtle)}
  .destination-card-grid .destination-copy{display:block}
  .destination-card-grid .destination-copy p{margin:4px 0 0}
  .destination-card-grid .destination-chevron,.destination-card-grid .destination-status{align-self:auto}
}
@media(max-width:430px){
  .primary-button,.secondary-button{width:100%}
  .availability-button{width:min(100%,300px)}
  .destination-row{padding:16px}
}
@media print{
  .marketing-home-page{background:#fff}
  .marketing-intro,.product-update,.destination-list,.steps,.faq-list details,.contact-card{background:#fff;box-shadow:none}
}
