/* DENTRIK · Responsive public web v2
   Mobile-first correction layer loaded AFTER brand-v1.1.2.css. */
html,body{max-width:100%;overflow-x:clip}
.site-header,.site-header *{box-sizing:border-box}
.mobile-nav[hidden]{display:none!important}

@media (max-width:1180px){
  .wrap{width:min(100% - 40px,var(--wrap))}
  .desktop-nav{display:none!important}
  .menu{display:block!important;order:3}
  .nav-actions{margin-left:auto!important}
  .nav-actions .login{display:inline-flex!important}
  .nav-actions .button{display:inline-flex!important}
  .hero{min-height:auto!important;background:linear-gradient(180deg,var(--navy-850) 0 48%,var(--ice) 48% 100%)!important}
  .hero-grid{min-height:auto!important;grid-template-columns:minmax(0,1fr)!important;gap:0!important;padding-bottom:72px!important}
  .hero-copy{max-width:860px;margin-inline:auto;padding:64px 0 48px!important;text-align:center!important}
  .hero-copy>p,.hero h1{margin-left:auto!important;margin-right:auto!important}
  .hero-actions,.hero-proof{justify-content:center!important}
  .hero-product{width:100%!important;min-height:auto!important;margin:0!important;padding:0 12px!important;justify-content:center!important}
  .desktop-frame{width:min(920px,100%)!important;max-width:100%!important;margin:0 auto!important;transform:none!important}
  .phone-frame{left:4%!important;bottom:-28px!important;width:150px!important}
  .note-two{left:auto!important;right:4%!important;bottom:-20px!important}
  .journey{grid-template-columns:repeat(7,minmax(128px,1fr))!important;overflow-x:auto!important;padding:4px 4px 14px!important;scroll-snap-type:x proximity;scrollbar-width:thin}
  .journey li{scroll-snap-align:start}
  .pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .checkout-grid{grid-template-columns:minmax(0,1fr)!important}
  .summary{position:static!important}
}

@media (max-width:900px){
  .nav{gap:14px!important}
  .logo img{width:152px!important}
  .nav-actions .button{display:none!important}
  .mobile-nav{inset:72px 0 0!important;padding:18px 24px calc(24px + env(safe-area-inset-bottom))!important}
  .mobile-nav:not([hidden]){display:block!important}
  .mobile-nav a:not(.button){min-height:52px!important;align-items:center!important}
  .mobile-nav .button{display:flex!important;min-height:52px!important}
  .experience-tabs{display:flex!important;overflow-x:auto!important;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding:8px!important;gap:6px!important}
  .experience-tabs button{flex:0 0 auto!important;min-width:132px!important;scroll-snap-align:start}
  .experience-main{grid-template-columns:minmax(0,1fr)!important}
  .experience-copy{min-height:0!important;border-right:0!important;border-bottom:1px solid var(--line)!important}
  .interface-stage{min-height:0!important;padding:28px!important}
  .mobile-story-grid,.ai-grid,.faq-grid,.footer-top,.split{grid-template-columns:minmax(0,1fr)!important}
  .footer-links{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .checkout{background:linear-gradient(180deg,var(--navy-850) 0 220px,var(--ice) 220px 100%)!important}
}

@media (max-width:767px){
  html{scroll-padding-top:64px!important}
  .wrap{width:min(100% - 28px,var(--wrap))!important}
  .site-header{backdrop-filter:none!important}
  .nav{height:64px!important;gap:10px!important}
  .logo img{width:136px!important}
  .menu{width:42px!important;height:42px!important;border-radius:10px!important}
  .nav-actions .login{display:none!important}
  .mobile-nav{inset:64px 0 0!important}

  .hero{background:var(--navy-850)!important;overflow:hidden!important}
  .hero:before{left:-48%!important;bottom:-13%!important;width:150%!important;height:52%!important;opacity:.62!important}
  .hero:after{width:80%!important;height:18%!important;opacity:.08!important}
  .hero-grid{padding-bottom:36px!important}
  .hero-copy{padding:44px 0 34px!important;text-align:left!important}
  .hero h1{max-width:100%!important;margin:18px 0!important;font-size:clamp(2.5rem,12vw,3.5rem)!important;line-height:.98!important;letter-spacing:-.045em!important}
  .hero-copy>p{font-size:1rem!important;line-height:1.6!important;margin:0!important}
  .hero-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;margin-top:24px!important}
  .hero-actions .button{width:100%!important;min-height:52px!important}
  .hero-proof{justify-content:flex-start!important;gap:10px 14px!important;margin-top:20px!important}
  .hero-proof span{font-size:.75rem!important}
  .hero-product{padding:0!important;margin-top:8px!important}
  .desktop-frame{width:100%!important;padding:5px!important;border-radius:14px!important;box-shadow:0 18px 44px rgba(0,0,0,.28)!important}
  .device-top{height:30px!important;padding:0 8px!important}
  .device-top b{font-size:.62rem!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .desktop-frame>img{border-radius:10px!important}
  .phone-frame,.floating-note{display:none!important}

  .journey-band{padding:48px 0!important}
  .journey-intro{display:block!important;margin-bottom:22px!important}
  .journey-intro h2{margin-top:12px!important;font-size:1.75rem!important;line-height:1.12!important}
  .journey{margin-right:-14px!important;grid-template-columns:repeat(7,150px)!important;gap:8px!important}
  .journey li{min-height:104px!important;padding:14px!important}
  .journey li:not(:last-child):after{display:none!important}
  .journey span{margin-top:18px!important;font-size:.8rem!important}

  .section{padding:64px 0!important}
  .section-heading{margin-bottom:30px!important}
  .section-heading.left{text-align:left!important}
  .section h2,.section-heading h2,.final-cta h2,.page-hero h1{font-size:clamp(1.9rem,9vw,2.5rem)!important;line-height:1.08!important;letter-spacing:-.035em!important}
  .section-heading p,.story-copy>p,.ai-copy>p,.page-hero p{font-size:1rem!important;line-height:1.6!important}
  .experience-shell{border-radius:14px!important}
  .experience-tabs{margin:0!important}
  .experience-tabs button{min-width:124px!important;min-height:52px!important}
  .experience-copy{padding:24px 20px!important}
  .experience-copy h3{font-size:1.55rem!important}
  .interface-stage{padding:16px!important}
  .cursor-callout{position:static!important;margin-top:12px!important;width:100%!important}

  .mobile-story-grid,.ai-grid{gap:32px!important}
  .mobile-device{width:min(100%,360px)!important;margin-inline:auto!important}
  .story-copy,.ai-copy{padding-inline:0!important}

  .pricing-grid{grid-template-columns:minmax(0,1fr)!important;gap:14px!important;margin-top:28px!important}
  .price-card{padding:22px!important;border-radius:16px!important}
  .price-card.featured{transform:none!important}
  .plan-price strong{font-size:2.5rem!important}
  .pricing-note{text-align:left!important}

  .faq-grid{gap:24px!important}
  .faq-list details{padding:16px 0!important}
  .final-cta{padding:62px 0!important}

  .page-hero{padding:58px 0!important}
  .page-hero.compact{padding:52px 0!important}
  .page-hero .hero-actions{display:grid!important}
  .benefit-grid,.resource-grid{grid-template-columns:minmax(0,1fr)!important}

  .checkout{padding:28px 0 56px!important;background:linear-gradient(180deg,var(--navy-850) 0 180px,var(--ice) 180px 100%)!important}
  .checkout-grid{gap:18px!important}
  .checkout-card{padding:20px 16px!important;border-radius:16px!important}
  .checkout-card h1{font-size:1.9rem!important;line-height:1.08!important}
  .checkout-steps{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px 12px!important;margin:22px 0 26px!important}
  .checkout-steps li{min-width:0!important}
  .form-grid{grid-template-columns:minmax(0,1fr)!important}
  .field.full{grid-column:auto!important}
  .field input,.field select{font-size:16px!important;min-height:50px!important}
  .payment-placeholder{grid-template-columns:minmax(0,1fr)!important}
  .checkout-actions{flex-direction:column-reverse!important}
  .checkout-actions .button{width:100%!important;min-height:50px!important}
  .summary{position:static!important}

  .footer-top{padding:48px 0 34px!important;gap:34px!important}
  .footer-links{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:28px 18px!important}
  .footer-bottom{display:block!important;padding-bottom:calc(24px + env(safe-area-inset-bottom))!important}
  .footer-bottom span{display:block!important;margin-top:4px!important}
}

@media (max-width:430px){
  .wrap{width:min(100% - 24px,var(--wrap))!important}
  .logo img{width:128px!important}
  .hero-copy{padding-top:36px!important}
  .hero h1{font-size:clamp(2.35rem,12.4vw,3.15rem)!important}
  .eyebrow{font-size:.7rem!important}
  .hero-proof{display:grid!important;grid-template-columns:1fr 1fr!important}
  .hero-proof span:last-child{grid-column:1/-1}
  .journey{grid-template-columns:repeat(7,138px)!important}
  .experience-tabs button{min-width:116px!important;padding-inline:10px!important}
  .footer-links{grid-template-columns:minmax(0,1fr)!important}
  .checkout-steps{grid-template-columns:minmax(0,1fr)!important}
}

@media (hover:none) and (pointer:coarse){
  a,button,[role="button"]{touch-action:manipulation}
  .button,.menu,.experience-tabs button{min-height:44px}
}

/* DENTRIK · Responsive public web v3 — tablet/mobile hardening */
*,*::before,*::after{box-sizing:border-box}
html,body{width:100%;max-width:100%;overflow-x:hidden}
body{min-width:320px}
img,svg,video,canvas{max-width:100%}
.wrap{max-width:100%}
.hero-grid>*,.experience-main>*,.mobile-story-grid>*,.ai-grid>*,.faq-grid>*,.split>*,.footer-top>*,.checkout-grid>*{min-width:0}
.hero-product,.desktop-frame,.interface-stage,.mobile-device,.checkout-card,.summary{max-width:100%}
.mobile-nav:not([hidden]){overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}

@media (min-width:768px) and (max-width:1180px){
  .wrap{width:min(calc(100% - 48px),var(--wrap))!important}
  .nav{height:72px!important}
  .desktop-nav{display:none!important}
  .menu{display:block!important}
  .hero{min-height:0!important;background:var(--navy-850)!important}
  .hero-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:24px!important;min-height:0!important;padding:0 0 56px!important}
  .hero-copy{max-width:820px!important;margin-inline:auto!important;padding:64px 0 24px!important;text-align:center!important}
  .hero-copy>p,.hero h1{margin-left:auto!important;margin-right:auto!important}
  .hero-actions,.hero-proof{justify-content:center!important}
  .hero-product{width:min(940px,100%)!important;min-height:0!important;margin:0 auto!important;padding:0!important}
  .desktop-frame{width:100%!important;margin:0 auto!important;transform:none!important}
  .phone-frame{left:18px!important;bottom:-24px!important;width:150px!important}
  .floating-note.note-two{left:auto!important;right:18px!important;bottom:-18px!important}
  .journey{display:grid!important;grid-auto-flow:column;grid-auto-columns:minmax(142px,1fr);grid-template-columns:none!important;overflow-x:auto!important;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding:4px 4px 14px!important}
  .journey li{scroll-snap-align:start}
  .experience-tabs{display:flex!important;overflow-x:auto!important;overscroll-behavior-x:contain;scroll-snap-type:x proximity}
  .experience-tabs button{flex:0 0 auto!important;min-width:132px!important;scroll-snap-align:start}
  .experience-main{grid-template-columns:minmax(260px,34%) minmax(0,1fr)!important}
  .interface-stage{padding:28px!important}
  .pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .checkout-grid{grid-template-columns:minmax(0,1fr)!important}
  .summary{position:static!important}
  .footer-top{grid-template-columns:minmax(0,1fr)!important}
  .footer-links{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

@media (max-width:900px){
  .wrap{width:min(calc(100% - 32px),var(--wrap))!important}
  .nav-actions .button{display:none!important}
  .nav-actions{margin-left:auto!important}
  .mobile-nav{position:fixed!important;inset:72px 0 0!important;z-index:1000!important;padding:18px max(20px,env(safe-area-inset-right)) calc(28px + env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left))!important;background:#fff!important}
  .experience-main{grid-template-columns:minmax(0,1fr)!important}
  .experience-copy{border-right:0!important;border-bottom:1px solid var(--line)!important}
  .mobile-story-grid,.ai-grid,.faq-grid,.split,.footer-top{grid-template-columns:minmax(0,1fr)!important}
  .benefit-grid,.resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

@media (max-width:767px){
  html{scroll-padding-top:64px!important}
  .wrap{width:min(calc(100% - 28px),var(--wrap))!important}
  .site-header{backdrop-filter:none!important}
  .nav{height:64px!important;gap:10px!important}
  .logo{min-width:0}
  .logo img{width:136px!important;height:auto!important}
  .menu{display:block!important;width:44px!important;height:44px!important;flex:none!important}
  .nav-actions .login,.nav-actions .button{display:none!important}
  .mobile-nav{inset:64px 0 0!important}
  .mobile-nav a:not(.button),.mobile-nav .button{min-height:52px!important}

  .hero{min-height:0!important;background:var(--navy-850)!important;overflow:hidden!important}
  .hero-grid{padding-bottom:38px!important}
  .hero-copy{max-width:none!important;padding:42px 0 26px!important;text-align:left!important}
  .hero h1{max-width:100%!important;margin:18px 0!important;font-size:clamp(2.45rem,11.8vw,3.35rem)!important;line-height:.99!important;letter-spacing:-.045em!important;text-wrap:balance}
  .hero-copy>p{max-width:100%!important;margin:0!important;font-size:1rem!important;line-height:1.58!important}
  .hero-actions{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important;margin-top:24px!important}
  .hero-actions .button{width:100%!important;min-height:52px!important;justify-content:center!important}
  .hero-proof{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch!important;gap:10px 14px!important;margin-top:20px!important}
  .hero-proof span{min-width:0;font-size:.76rem!important}
  .hero-proof span:last-child{grid-column:1/-1}
  .hero-product{width:100%!important;min-height:0!important;margin:4px 0 0!important;padding:0!important}
  .desktop-frame{width:100%!important;padding:5px!important;border-radius:14px!important;box-shadow:0 18px 44px rgba(0,0,0,.28)!important}
  .device-top{height:30px!important;padding:0 8px!important}
  .device-top b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.62rem!important}
  .desktop-frame>img{display:block;width:100%!important;height:auto!important;border-radius:10px!important}
  .phone-frame,.floating-note{display:none!important}

  .journey-band{padding:48px 0!important}
  .journey-intro{display:block!important;margin-bottom:22px!important}
  .journey-intro h2{margin-top:12px!important;font-size:1.75rem!important;line-height:1.12!important}
  .journey{display:grid!important;grid-auto-flow:column;grid-auto-columns:minmax(148px,44vw);grid-template-columns:none!important;gap:8px!important;margin-right:-14px!important;overflow-x:auto!important;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;padding:4px 14px 14px 0!important}
  .journey li{min-height:104px!important;padding:14px!important;scroll-snap-align:start}
  .journey li:not(:last-child):after{display:none!important}

  .section{padding:64px 0!important}
  .section-heading{margin-bottom:30px!important}
  .section-heading.left{text-align:left!important}
  .section h2,.section-heading h2,.final-cta h2,.page-hero h1{font-size:clamp(1.9rem,9vw,2.5rem)!important;line-height:1.08!important;letter-spacing:-.035em!important;text-wrap:balance}
  .section-heading p,.story-copy>p,.ai-copy>p,.page-hero p{font-size:1rem!important;line-height:1.6!important}
  .experience-shell{overflow:hidden!important;border-radius:14px!important}
  .experience-tabs{display:flex!important;width:100%!important;gap:6px!important;margin:0!important;padding:8px!important;overflow-x:auto!important;scroll-snap-type:x mandatory;scrollbar-width:none}
  .experience-tabs::-webkit-scrollbar,.journey::-webkit-scrollbar{display:none}
  .experience-tabs button{flex:0 0 min(43vw,150px)!important;min-width:116px!important;min-height:52px!important;scroll-snap-align:start}
  .experience-copy{padding:24px 20px!important}
  .experience-copy h3{font-size:1.55rem!important}
  .interface-stage{min-height:0!important;padding:16px!important}
  .interface-stage>img{display:block;width:100%!important;height:auto!important}
  .cursor-callout{position:static!important;width:100%!important;margin-top:12px!important}

  .mobile-story-grid,.ai-grid{gap:32px!important}
  .mobile-device{width:min(100%,360px)!important;margin-inline:auto!important}
  .story-copy,.ai-copy{padding-inline:0!important}
  .pricing-grid,.benefit-grid,.resource-grid{grid-template-columns:minmax(0,1fr)!important}
  .price-card{padding:22px!important;border-radius:16px!important}
  .price-card.featured{transform:none!important}
  .plan-price strong{font-size:2.5rem!important}

  .page-hero,.page-hero.compact{padding:52px 0!important}
  .page-hero .hero-actions{display:grid!important}
  .checkout{padding:28px 0 56px!important}
  .checkout-grid,.form-grid,.payment-placeholder{grid-template-columns:minmax(0,1fr)!important}
  .checkout-card{padding:20px 16px!important;border-radius:16px!important}
  .checkout-steps{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px 12px!important}
  .field.full{grid-column:auto!important}
  .field input,.field select,.field textarea{max-width:100%!important;font-size:16px!important}
  .checkout-actions{flex-direction:column-reverse!important}
  .checkout-actions .button{width:100%!important;min-height:50px!important}
  .summary{position:static!important}

  .footer-top{padding:48px 0 34px!important;gap:34px!important}
  .footer-links{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:28px 18px!important}
  .footer-bottom{display:block!important;padding-bottom:calc(24px + env(safe-area-inset-bottom))!important}
  .footer-bottom span{display:block!important;margin-top:4px!important}
}

@media (max-width:430px){
  .wrap{width:min(calc(100% - 24px),var(--wrap))!important}
  .logo img{width:128px!important}
  .hero-copy{padding-top:36px!important}
  .hero h1{font-size:clamp(2.3rem,12vw,3.05rem)!important}
  .eyebrow{font-size:.7rem!important}
  .experience-tabs button{flex-basis:44vw!important}
  .checkout-steps,.footer-links{grid-template-columns:minmax(0,1fr)!important}
}

@media (hover:none) and (pointer:coarse){
  a,button,[role="button"],summary{touch-action:manipulation}
  .button,.menu,.experience-tabs button{min-height:44px}
}
