/* Phone and small-tablet layout. Desktop styling remains in marine.css. */
@media(max-width:899px){
 :root{--pad:24px;scroll-padding-top:92px;}
 .page-frame{width:calc(100% - 24px);max-width:720px;}
 .site-header{top:8px;grid-template-columns:minmax(0,1fr) auto;min-height:64px;margin:12px 0 20px;border-radius:14px;}
 .site-header .brand-cell{padding:12px 14px;min-width:0;}
 .site-header .brand{width:clamp(112px,29vw,150px);}
 .site-header .desktop-nav{display:none;}
 .site-header .header-actions{padding:8px 10px;gap:6px;}
 .site-header .header-actions>.button{display:none;}
 .site-header .menu-toggle{display:flex;width:44px;height:44px;border:0;}
 .language-switch{gap:0;}
 .language-switch button{min-width:32px;min-height:44px;}
 .site-header .mobile-nav:not([hidden]){display:flex;position:absolute;top:calc(100% + 8px);left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:10px 18px;border:1px solid #cbdce9;border-radius:14px;background:#f1f7fc;box-shadow:0 14px 30px #071b3530;max-height:calc(100dvh - 100px);overflow-y:auto;}
 .site-header .mobile-nav a{justify-content:flex-start;min-height:48px;white-space:normal;font-size:1rem;padding:12px 4px;}
 .site-header .mobile-nav a:last-child{color:#075f97;font-weight:600;border-top:1px solid #b6cddd;margin-top:6px;padding-top:16px;}
 .site-header .mobile-nav a::after{display:none;}
 #main{display:block;padding-bottom:0;}
 .equal-cards [data-stack-card],[data-stack-card]{height:auto;min-height:0;max-height:none;position:relative;top:auto;transform:none;margin-bottom:20px;border-radius:20px;overflow:clip;}
 .card-content{position:static;width:100%;transform:none;min-height:0;}
 .hero>.card-content,.platform-section>.card-content,.clarity-section>.card-content,.demo-section>.card-content{display:grid;grid-template-columns:minmax(0,1fr);}
 .hero{min-height:0;}
 .hero .hero-copy{padding:32px 24px 24px;}
 .hero .eyebrow{font-size:.6875rem;line-height:1.6;letter-spacing:.09em;margin-bottom:24px;}
 .hero h1{font-size:clamp(2rem,8.2vw,3.75rem);line-height:1.08;letter-spacing:-.05em;margin-bottom:22px;}
 .hero-lead{font-size:1rem;line-height:1.7;max-width:none;}
 .hero-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:24px;}
 .hero-actions .button{min-height:48px;font-size:.9375rem;}
 .hero-bottom{display:none;}
 .hero .hero-media{padding:12px 12px 18px;border-left:0;border-top:1px solid #b6cddd66;}
 .media-top{padding:12px 12px 22px;}
 .media-top .micro-label{font-size:.6875rem;}
 .hero .device-composition{min-height:0;margin:0;padding:4px 0 18px;}
 .hero .media-caption{padding:10px 12px 4px;gap:12px;align-items:center;}
 .media-caption h2{font-size:clamp(1.375rem,5.5vw,2rem);line-height:1.2;margin-top:8px;}
 .media-zoom{flex-shrink:0;min-width:44px;min-height:44px;}
 .section-padding,.section-heading,.platform-section .platform-intro,.clarity-intro,.demo-copy{padding:28px 24px;}
 .eyebrow{margin-bottom:20px;}
 .section-title,.platform-intro .section-title,.demo-copy .section-title,.clarity-intro .section-title{font-size:clamp(1.75rem,7vw,2.6rem);line-height:1.15;letter-spacing:-.04em;}
 .section-copy,.demo-copy .section-copy{font-size:1rem;line-height:1.7;max-width:none;}
 .platform-section .platform-intro{display:block;border-right:0;border-bottom:1px solid #b6cddd66;}
 .platform-intro .section-copy{margin-top:20px;}
 .platform-section .about-benefits{margin-top:24px;gap:14px;}
 .platform-section .about-benefits li{font-size:.9375rem;line-height:1.6;}
 .platform-section .features-wrap{padding:14px;}
 .platform-section .feature-grid{grid-template-columns:minmax(0,1fr);gap:10px;}
 .platform-section .feature{padding:20px;}
 .platform-section .feature-top{margin-bottom:12px;}
 .platform-section .feature h3{font-size:1.125rem;}
 .platform-section .feature p{font-size:.9375rem;line-height:1.65;margin-bottom:0;}
 .product-section .section-heading{padding:28px 24px 22px;}
 .product-section .product-workspace{display:flex;flex-direction:column;gap:22px;padding:0 20px 28px;}
 .product-section .product-tabs{display:flex;flex-direction:row;flex-wrap:nowrap;gap:8px;width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scroll-snap-type:x proximity;border:0;border-bottom:1px solid #a4c4d780;padding:0 0 12px;}
 .product-section .product-tabs button{width:auto;min-height:48px;flex:0 0 auto;padding:12px 14px;font-size:.875rem;white-space:nowrap;scroll-snap-align:start;border-radius:8px;}
 .product-section .product-tabs .tab-icon{display:none;}
 .product-section .product-tabs button[aria-selected=true]::after{top:auto;bottom:0;left:12px;right:12px;height:2px;width:auto;}
 .product-section .product-panel{display:grid;grid-template-columns:minmax(0,1fr);width:100%;gap:20px;padding:0;min-height:0;align-content:start;}
 .product-section .panel-copy{padding:0;}
 .product-section .panel-kicker{font-size:.6875rem;line-height:1.6;letter-spacing:.08em;}
 .product-section .panel-copy h3{font-size:1.625rem;line-height:1.2;margin:12px 0;}
 .product-section .panel-copy p{font-size:1rem;line-height:1.65;}
 .product-section .demo-screen-links{gap:6px 18px;margin-top:12px;}
 .product-section .demo-screen-links .text-button{min-height:44px;font-size:.875rem;}
 .product-section .mobile-triptych img{max-height:none;}
 .solution-timer{display:none;}
 .clarity-intro{border-right:0;}
 .strategy-tagline{margin-top:24px;}
 .strategy-steps{padding:0 16px 20px;gap:10px;}
 .strategy-steps>li{padding:20px 16px;gap:14px;}
 .strategy-steps h3{font-size:1.125rem;line-height:1.4;}
 .strategy-steps p{font-size:.9375rem;line-height:1.65;}
 .team-list{grid-template-columns:1fr;}
 .team-list article:nth-child(n){min-height:0;padding:24px;border-left:0;border-top:1px solid #afcfdf70;}
 .team-list article:first-child{border-top:0;}
 .team-list .index{margin-bottom:12px;}
 .team-list h3{font-size:1.125rem;margin-bottom:8px;}
 .team-list p{font-size:1rem;line-height:1.65;}
 .demo-copy{border-right:0;}
 .demo-steps>div{font-size:.9375rem;}
 .form-wrap{padding:0 14px 16px;}
 .demo-form{padding:24px 20px;border-radius:14px;}
 .demo-form h3{font-size:1.5rem;}
 .demo-form .form-row{grid-template-columns:1fr;gap:0;}
 .field input,.field textarea{font-size:16px;min-height:48px;}
 .field textarea{min-height:112px;resize:vertical;}
 .field label{font-size:.875rem;}
 .demo-form .form-submit{min-height:48px;width:100%;font-size:1rem;}
 .demo-form.demo-success{min-height:340px;}
 .footer-main,.footer-bottom{padding:20px 16px;gap:16px;}
 .footer-main p{font-size:.875rem;line-height:1.6;}
 .back-top{min-height:44px;display:inline-flex;align-items:center;}
 dialog{width:calc(100% - 20px);max-width:720px;max-height:90dvh;padding:16px;border-radius:14px;}
 .dialog-head{align-items:center;gap:12px;margin-bottom:14px;}
 .dialog-head h2{font-size:1rem;line-height:1.4;}
 .dialog-close{width:44px;height:44px;flex-shrink:0;}
 #dialog-image{max-height:65dvh;max-width:100%;height:auto;object-fit:contain;}
}
@media(min-width:560px) and (max-width:899px){
 .hero-actions{grid-template-columns:1fr 1fr;}
 .platform-section .feature-grid,.team-list{grid-template-columns:repeat(2,minmax(0,1fr));}
 .team-list article:nth-child(even){border-left:1px solid #afcfdf70;}
 .team-list article:nth-child(2){border-top:0;}
}

/* Native mobile card stacking and readable, swipeable content. */
.mobile-carousel{display:contents;}
.carousel-controls{display:none;}
@media(max-width:899px){
 .site-header{
  background:linear-gradient(115deg,rgba(255,255,255,.32),rgba(202,232,250,.14) 55%,rgba(255,255,255,.24));
  backdrop-filter:blur(64px) saturate(260%) brightness(1.12);
  -webkit-backdrop-filter:blur(64px) saturate(260%) brightness(1.12);
  box-shadow:inset 0 1px 0 #ffffffa6,inset 0 -1px 0 #ffffff40,0 10px 30px -14px #072e5952;
 }
 .site-header .menu-toggle,.site-header .menu-toggle:hover,.site-header .menu-toggle:active{background:transparent;box-shadow:none;border:0;}
 .site-header .mobile-nav:not([hidden]){background:rgba(232,246,255,.8);backdrop-filter:blur(48px) saturate(240%);-webkit-backdrop-filter:blur(48px) saturate(240%);}
 .stack-layout #main{display:flex;flex-direction:column;gap:36px;padding-bottom:24px;}
 .stack-layout [data-stack-card]{margin-bottom:0;flex-shrink:0;}
 .stacking-enabled [data-stack-card]{position:sticky;top:var(--stack-top);z-index:var(--stack-order);transform:none;}
 .mobile-carousel{display:block;min-width:0;width:100%;}
 .platform-section .feature-grid,.strategy-steps,.team-list{
  display:flex;flex-wrap:nowrap;align-items:stretch;gap:12px;overflow-x:auto;
  scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;
  scrollbar-color:#648ea966 transparent;scroll-padding-inline:16px;padding:0 16px 10px;
 }
 .platform-section .features-wrap{padding:16px 0 10px;}
 .platform-section .feature-grid>.feature,.strategy-steps>li,.team-list>article:nth-child(n){
  flex:0 0 calc(100% - 24px);min-width:0;scroll-snap-align:start;
  height:auto;min-height:0;padding:22px;border:0;border-radius:14px;background:#ffffff40;
 }
 .platform-section .feature-grid::after,.strategy-steps::after,.team-list::after{content:'';flex:0 0 12px;}
 .strategy-steps>li{display:flex;flex-direction:column;gap:12px;}
 .strategy-steps>li>span:last-child{display:none;}
 .equal-cards .team-list{align-items:stretch;}
 .team-list{background:transparent;border:0;}
 .carousel-controls{display:flex;align-items:center;justify-content:flex-end;gap:14px;padding:4px 18px 14px;color:#315d78;}
 .carousel-controls button{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;background:transparent;color:#123b59;font-size:24px;cursor:pointer;}
 .carousel-controls button:disabled{opacity:.25;cursor:default;}
 .carousel-controls span{font-size:12px;font-variant-numeric:tabular-nums;letter-spacing:.12em;}
 .carousel-controls button:focus-visible,.mobile-carousel> :focus-visible{outline:2px solid #297bab;outline-offset:-2px;}
 #demo,.demo-copy,.demo-section .form-wrap,.demo-form{border:0;}
 .demo-form{box-shadow:none;background:transparent;}
}

/* Fixed viewport-sized cards: 16px below the header and above the screen edge. */
@media(max-width:899px){
 html{overscroll-behavior-y:none;}
 .site-header{margin-top:8px;margin-bottom:16px;}
 .stack-layout #main{gap:32px;padding-bottom:16px;}
 .equal-cards [data-stack-card]{height:var(--stack-height);min-height:var(--stack-height);max-height:var(--stack-height);}
 .card-content{max-height:100%;}
 .hero .hero-copy{padding:24px;}
 .hero .eyebrow{margin-bottom:16px;}
 .hero h1{margin-bottom:16px;}
 .hero-actions{margin-top:18px;}
 .section-padding,.section-heading,.platform-section .platform-intro,.clarity-intro,.demo-copy{padding:24px;}
 .demo-form{padding:20px;}
 .demo-form .form-row{grid-template-columns:1fr 1fr;gap:12px;}
 .demo-form .field{margin-bottom:12px;}
 .demo-form .field textarea{min-height:72px;}
 .mobile-paged>.card-content{display:flex;flex-direction:row;gap:0;width:100%;height:calc(100% - 48px);max-height:none;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;}
 .mobile-paged>.card-content::-webkit-scrollbar{display:none;}
 .deck-page{flex:0 0 100%;width:100%;min-width:0;height:100%;scroll-snap-align:start;scroll-snap-stop:always;overflow:hidden;}
 .deck-page-inner{width:100%;transform-origin:top left;display:flow-root;}
 .deck-controls{position:absolute;bottom:0;left:0;right:0;height:48px;display:flex;justify-content:center;align-items:center;gap:20px;}
 .deck-controls button{width:44px;height:44px;background:transparent;border:0;color:#123b59;font-size:24px;cursor:pointer;}
 .deck-controls button:disabled{opacity:.25;}
 .deck-controls span{font-size:12px;letter-spacing:.12em;color:#315d78;}
}
@media(max-width:899px){
 .deck-editing .deck-page{overflow-y:auto;overscroll-behavior-y:contain;}
 .deck-editing .deck-page-inner{width:100%!important;transform:none!important;}
}

/* One mobile hero: introduction above, full laptop below. */
@media(max-width:899px){
 .hero .hero-actions{display:none;}
 .hero>.card-content{height:100%;max-height:100%;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:50% 50%;}
 .hero .hero-copy{align-self:start;min-height:0;padding:20px 24px 12px;transform-origin:top left;}
 .hero .eyebrow{font-size:.625rem;letter-spacing:.06em;line-height:1.5;margin-bottom:12px;}
 .hero h1{font-size:clamp(26px,calc(var(--stack-height) * .055),34px);line-height:1.08;margin-bottom:14px;}
 .hero .hero-lead{font-size:14px;line-height:1.55;margin:0;}
 .hero .hero-media{min-height:0;height:100%;padding:8px 12px 12px;border:0;display:flex;flex-direction:column;justify-content:center;gap:8px;}
 .hero .media-top{padding:0 10px;flex:0 0 auto;}
 .hero .media-top .micro-label{font-size:9px;}
 .hero .device-composition{flex:1 1 0;display:flex;align-items:center;justify-content:center;min-height:0!important;padding:0;margin:0;}
 .hero .macbook-preview{width:min(100%,calc((var(--stack-height) * .5 - 116px) * 1.65));flex-shrink:0;padding-bottom:0;}
 .hero .macbook-display{padding:8px 5px 6px;border-radius:10px 10px 3px 3px;}
 .hero .macbook-display::before{top:2px;width:3px;height:3px;}
 .hero .macbook-base{height:9px;}
 .hero .media-caption{padding:0 10px;flex:0 0 auto;align-items:center;}
 .hero .media-caption .micro-label{font-size:9px;}
 .hero .media-caption h2{font-size:16px;line-height:1.2;margin-top:4px;}
}

/* Platform features have their own mobile stack card: two pages of three. */
.features-section[data-stack-card]{display:none!important;}
.feature-page{display:contents;}
@media(max-width:899px){
 .features-section[data-stack-card]{display:block!important;}
 .features-section>.card-content,.features-section .features-wrap{height:100%;min-height:0;padding:0;}
 .features-section .mobile-carousel{height:100%;display:flex;flex-direction:column;min-height:0;}
 .features-section .feature-grid{display:flex;flex:1 1 0;min-height:0;gap:0;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;padding:0;}
 .features-section .feature-grid::-webkit-scrollbar{display:none;}
 .features-section .feature-grid::after{display:none;}
 .features-section .feature-page{display:grid;grid-template-rows:repeat(3,minmax(0,1fr));flex:0 0 100%;width:100%;min-width:0;gap:10px;padding:16px 16px 0;scroll-snap-align:start;scroll-snap-stop:always;}
 .features-section .feature{position:relative;display:flex;flex-direction:column;justify-content:center;min-width:0;min-height:0;padding:16px;border:0;border-radius:14px;background:#ffffff40;}
 .features-section .feature-top{position:absolute;right:14px;top:14px;margin:0;}
 .features-section .feature-icon{display:none;}
 .features-section .feature-number{font-size:10px;}
 .features-section .feature h3{padding-right:26px;margin:0 0 8px;font-size:17px;line-height:1.25;}
 .features-section .feature p{font-size:14px;line-height:1.5;margin:0;}
 .features-section .carousel-controls{flex:0 0 56px;padding:6px 18px;justify-content:center;}
}
@media(max-width:899px) and (max-height:650px){
 .features-section .feature-page{gap:6px;padding:10px 10px 0;}
 .features-section .feature{padding:10px 12px;}
 .features-section .feature h3{font-size:15px;margin-bottom:5px;}
 .features-section .feature p{font-size:12px;line-height:1.35;}
}
