/* Final mobile pass — loaded after page and refinement styles. */
@media (max-width: 760px){
  html{overflow-x:hidden;-webkit-text-size-adjust:100%}
  body{overflow-x:clip}
  img,svg,video{max-width:100%;height:auto}
  .wrap{width:100%!important;max-width:none!important;padding-left:18px!important;padding-right:18px!important}
  section{padding-block:64px!important}
  .section-head{margin-bottom:34px!important}
  .section-head h2{font-size:clamp(2rem,10vw,2.8rem)!important;line-height:1.04!important}
  .section-head p{font-size:.98rem!important;line-height:1.68!important}
  .cta-row{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important}
  .cta-row .btn{width:100%!important;min-height:50px!important;justify-content:center!important;text-align:center!important}
  input,textarea,select{width:100%!important;min-width:0!important;font-size:16px!important}
  input[type="checkbox"],input[type="radio"]{width:18px!important;height:18px!important;min-width:18px!important;flex:0 0 18px!important}
  textarea{min-height:132px!important}
  .form-row{grid-template-columns:1fr!important;gap:14px!important}
  .contact-grid{grid-template-columns:1fr!important;gap:34px!important}
  .contact-grid form{padding:24px 18px!important}
  .services-grid,.pgrid,.listings-grid,.about-grid,.why-grid{grid-template-columns:1fr!important}
  .service-card,.about-card,.why-card{min-height:0!important;padding:28px 24px!important}
  .detail-grid{grid-template-columns:1fr!important}
  .portfolio-tabs{display:flex!important;max-width:100%!important;overflow-x:auto!important;scrollbar-width:none!important;-webkit-overflow-scrolling:touch}
  .portfolio-tabs::-webkit-scrollbar{display:none}
  .ptab{flex:0 0 auto!important;min-height:44px!important;padding-inline:16px!important}
  body.page-cad .portfolio-tabs{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;overflow:visible!important}
  body.page-cad .ptab{width:100%!important;min-width:0!important;padding:10px 8px!important;white-space:normal!important;line-height:1.25!important}
  body.page-cad .ptab.active{color:#fff!important}
  .step{grid-template-columns:64px minmax(0,1fr)!important}
  .step-idx{padding-inline:8px!important}
  .step-body{padding:23px 18px!important;min-width:0!important}
  .faq-q{min-height:54px!important;padding-block:15px!important;padding-right:34px!important}
  footer{padding-bottom:max(30px,env(safe-area-inset-bottom))!important}
  .footer-grid{grid-template-columns:1fr!important;gap:26px!important}

  body.page-home .header-inner{height:auto!important;min-height:70px!important;padding:10px 16px!important;flex-wrap:nowrap!important}
  body.page-home .brand{min-width:0!important;max-width:180px!important}
  body.page-home .brand .mark{font-size:1rem!important;white-space:nowrap!important}
  body.page-home .brand .sub{font-size:.55rem!important;white-space:normal!important;line-height:1.25!important}
  body.page-home .menu-toggle{order:2;flex:0 0 44px;width:44px;height:44px;padding:8px!important}
  body.page-home .lang-toggle{order:3;flex:0 0 auto!important}
  body.page-home .nav-links{top:calc(100% + 1px)!important;left:12px!important;right:12px!important;width:auto!important;padding:14px!important;box-shadow:0 18px 40px rgba(8,38,61,.15)!important}
  body.page-home .hero-inner{width:100%!important;max-width:none!important;margin-inline:0!important;padding:58px 16px 66px!important}
  body.page-home .hero-inner>div{max-width:min(88vw,560px)!important}
  body.page-home .hero-bg{left:0!important;background-position:62% center!important}
  body.page-home .hero-scrim{background:linear-gradient(180deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.92) 47%,rgba(255,255,255,.3) 68%,rgba(255,255,255,0) 100%)!important}
  body.page-home .hero .headline{font-size:clamp(2.8rem,14vw,4.15rem)!important;line-height:.94!important;overflow-wrap:normal!important;word-break:normal!important}
  body.page-home .hero .lede{font-size:1.04rem!important;line-height:1.7!important;margin-top:22px!important}
  body.page-home .lede-note{font-family:"Space Grotesk",Arial,sans-serif!important;font-size:.96rem!important;font-weight:400!important;line-height:1.65!important;letter-spacing:normal!important;padding:12px 14px!important}
  body.page-home .cross-section-bleed{padding-inline:0!important;overflow:hidden!important}
  body.page-home .cross-section{height:900px!important;min-height:900px!important;width:100%!important}
  body.page-home .cross-section-bg{background-size:auto 100%!important;background-position:52% center!important}
  body.page-home .cross-section-scrim{background:linear-gradient(90deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.82) 34%,rgba(255,255,255,.18) 70%,transparent 100%)!important}
  body.page-home .cross-section .floor.f-gold{top:10.5%!important;height:29.5%!important}
  body.page-home .cross-section .floor.f-blue{top:40%!important;height:25.5%!important}
  body.page-home .cross-section .floor.f-moss{top:65.5%!important;height:33%!important}
  body.page-home .cross-section .floor-row{height:100%!important;display:grid!important;grid-template-columns:1fr!important;align-content:center!important;align-items:center!important;gap:10px!important;padding:14px 18px!important}
  body.page-home .cross-section .floor-index{height:auto!important;padding:0!important;align-items:center!important}
  body.page-home .cross-section .floor-badge{width:fit-content!important;min-width:0!important;max-width:min(230px,100%)!important;padding:9px 11px!important;box-shadow:0 7px 22px rgba(8,38,61,.13)!important}
  body.page-home .cross-section .floor-badge .n{font-size:1rem!important}
  body.page-home .cross-section .floor-badge .l{font-family:"Space Grotesk",Arial,sans-serif!important;font-size:.65rem!important;line-height:1.3!important;letter-spacing:.07em!important}
  body.page-home .cross-section .floor-badge .role{font-family:"Space Grotesk",Arial,sans-serif!important;font-size:.68rem!important;line-height:1.35!important;letter-spacing:.025em!important}
  body.page-home .cross-section .floor-badge h3{font-size:.9rem!important;line-height:1.2!important}
  body.page-home .cross-section .floor-body{display:block!important;height:auto!important;min-width:0!important;padding:0!important;overflow:visible!important}
  body.page-home .cross-section .floor-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:5px!important;width:100%!important;max-width:100%!important;opacity:1!important;visibility:visible!important;transform:none!important;pointer-events:none!important}
  body.page-home .cross-section .floor-list li{display:block!important;width:100%!important;max-width:100%!important;padding:6px 8px!important;font-family:"Space Grotesk",Arial,sans-serif!important;font-size:.8rem!important;font-weight:500!important;line-height:1.32!important;letter-spacing:normal!important;text-align:left!important;overflow-wrap:anywhere!important;background:rgba(255,255,255,.93)!important;box-shadow:0 3px 10px rgba(8,38,61,.1)!important}
  body.page-home .cross-section .floor-list li:last-child{grid-column:1 / -1!important}
  body.page-home .cross-section .floor-list li.floor-break{display:none!important}
  body.page-home .cross-section .floor-go{display:none!important}
  body.page-home .cross-section .floor:hover{background:transparent!important}
  body.page-home .steps .step{padding:26px 22px!important}
  body.page-home .steps .step h3{font-size:1.22rem!important;line-height:1.2!important;margin-bottom:10px!important}
  body.page-home .steps .step p{font-size:1rem!important;line-height:1.7!important}

  body:is(.page-cad,.page-sale)>header{height:76px!important;min-height:76px!important}
  body:is(.page-cad,.page-sale) .header-inner{position:relative!important;display:flex!important;flex-wrap:nowrap!important;height:76px!important;min-height:76px!important;padding:8px 16px!important;gap:8px!important}
  body:is(.page-cad,.page-sale) .logo{flex:1 1 auto!important;min-width:0!important;max-width:none!important;font-size:.88rem!important;line-height:1.08!important}
  body:is(.page-cad,.page-sale) .logo .sub{display:block!important;margin-top:5px!important;font-size:.52rem!important;line-height:1.15!important;white-space:normal!important}
  body:is(.page-cad,.page-sale) .header-inner>.lang-toggle{flex:0 0 auto!important;margin:0!important}
  body:is(.page-cad,.page-sale) .lang-toggle a{min-width:34px!important;min-height:38px!important;padding:10px 8px!important;text-align:center!important}
  body:is(.page-cad,.page-sale) .header-cta{display:none!important}
  body:is(.page-cad,.page-sale) .section-menu-toggle{display:inline-flex!important;flex:0 0 42px;width:42px;height:42px;border:0;background:transparent;align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer}
  body:is(.page-cad,.page-sale) .section-menu-toggle span{display:block;width:21px;height:2px;background:currentColor;transition:transform .22s ease,opacity .22s ease}
  body.page-cad .section-menu-toggle{color:var(--ink)}
  body.page-sale .section-menu-toggle{color:var(--gold-l)}
  body:is(.page-cad,.page-sale) .section-menu-open .section-menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  body:is(.page-cad,.page-sale) .section-menu-open .section-menu-toggle span:nth-child(2){opacity:0}
  body:is(.page-cad,.page-sale) .section-menu-open .section-menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  body:is(.page-cad,.page-sale) header nav{display:none!important;position:absolute!important;top:calc(100% + 1px)!important;left:12px!important;right:12px!important;width:auto!important;padding:12px!important;flex-direction:column!important;align-items:stretch!important;gap:3px!important;background:#fff!important;box-shadow:0 18px 42px rgba(8,38,61,.16)!important;z-index:140!important}
  body.page-sale header nav{background:#101c31!important}
  body:is(.page-cad,.page-sale) header.section-menu-open nav{display:flex!important}
  body:is(.page-cad,.page-sale) header nav a{display:block!important;min-height:44px!important;padding:12px 14px!important;text-align:left!important}
  body:is(.page-cad,.page-sale) .hero-grid{padding-block:54px 66px!important;gap:34px!important}
  body:is(.page-cad,.page-sale) .hero .headline{font-size:clamp(2.75rem,14vw,4.1rem)!important;line-height:.94!important}
  body:is(.page-cad,.page-sale) .hero .lede{font-size:1rem!important;line-height:1.68!important}
  body:is(.page-cad,.page-sale) .trust-strip{display:grid!important;gap:8px!important;font-size:.72rem!important}
  body:is(.page-cad,.page-sale) #ablauf .step{grid-template-columns:minmax(0,1fr)!important;padding:0!important}
  body:is(.page-cad,.page-sale) #ablauf .step-idx{display:flex!important;align-items:flex-start!important;justify-content:flex-start!important;padding:20px 22px 0!important;border-right:0!important;background:transparent!important}
  body:is(.page-cad,.page-sale) #ablauf .step-body{padding:15px 22px 27px!important}
  body:is(.page-cad,.page-sale) #ablauf .step-body h3{font-size:1.34rem!important;line-height:1.2!important;letter-spacing:-.025em!important;margin:0 0 10px!important;overflow-wrap:anywhere!important}
  body:is(.page-cad,.page-sale) #ablauf .step-body p{font-size:1rem!important;line-height:1.7!important;overflow-wrap:anywhere!important}
  body.page-cad #ablauf .step-idx .sheet-tag{display:inline-flex!important;flex-direction:row!important;width:auto!important;max-width:100%!important;overflow:visible!important;white-space:nowrap!important;border:1px solid var(--line-strong)!important;text-align:left!important}
  body.page-cad #ablauf .step-idx .sheet-tag span{padding:5px 9px!important;font:600 12px/1.3 "Space Grotesk",Arial,sans-serif!important;letter-spacing:.08em!important;white-space:nowrap!important}
  body.page-cad #ablauf .step-idx .sheet-tag span:first-child{border-radius:0!important}
  body.page-cad #ablauf .step-idx .sheet-tag span:last-child{border:0!important;border-radius:0!important;line-height:1.3!important}
  body.page-sale #ablauf .step-idx .tag{margin:0!important;max-width:100%!important;font:600 12px/1.35 "Space Grotesk",Arial,sans-serif!important;letter-spacing:.08em!important;white-space:normal!important;text-align:left!important}
  body.page-cad .hero-art{min-height:300px!important}
  body.page-cad .ambient-cad-model{right:-72px!important;top:28vh!important;width:340px!important;opacity:.38!important}
  body.page-sale .hero-art{min-height:340px!important}
  body.page-sale .ambient-keys{right:-6px!important;top:24vh!important;width:145px!important;height:218px!important;opacity:.36!important}
  body.page-sale .listing-card{min-width:0!important;width:100%!important}
  body.page-sale .listing-ph{width:100%!important;min-width:0!important;min-height:0!important;aspect-ratio:4 / 3!important}

  body.page-garden .header-inner{padding-left:14px!important;padding-right:14px!important;gap:6px!important;flex-wrap:nowrap!important}
  body.page-garden .garden-brand{flex:0 0 64px!important;width:64px!important}
  body.page-garden .header-inner>.lang-toggle{flex:0 0 auto!important}
  body.page-garden .garden-menu-toggle{flex:0 0 42px!important}
  body.page-garden .hero-grid{gap:34px!important;padding-block:48px 64px!important}
  body.page-garden .hero .headline{font-size:clamp(2.7rem,14vw,4rem)!important;overflow-wrap:normal!important;word-break:normal!important}
  body.page-garden .compare-wrap{margin-inline:0!important}
  body.page-garden .contact-grid form{padding:0!important}
  body.page-garden #ablauf .step,body.page-garden #ablauf .step:nth-child(-n+2){grid-template-columns:minmax(0,1fr)!important;padding:28px 0!important}
  body.page-garden #ablauf .step-idx{margin:0 0 12px!important}
  body.page-garden #ablauf .step-idx .tag{font-size:1.75rem!important;line-height:1!important}
  body.page-garden #ablauf .step-body{padding:0!important;min-width:0!important}
  body.page-garden #ablauf .step-body h3{font-size:1.35rem!important;line-height:1.2!important;letter-spacing:-.025em!important;margin:0 0 10px!important;overflow-wrap:anywhere!important}
  body.page-garden #ablauf .step-body p{font-size:1rem!important;line-height:1.7!important;overflow-wrap:anywhere!important}

  body .contact-info li{gap:14px!important;align-items:flex-start!important}
  body .contact-info li span:last-child{min-width:0!important;text-align:right!important;overflow-wrap:anywhere!important}
  body.page-cad .contact-band .submit-row{align-items:stretch!important;flex-direction:column!important}
  body.page-cad .contact-band .submit-row .btn{width:100%!important;justify-content:center!important}

  body.page-legal>.wrap{width:100%!important;padding:34px 18px 72px!important}
  body.page-legal .back{margin-bottom:32px!important}
  body.page-legal h1{font-size:clamp(2.65rem,14vw,4rem)!important;margin-bottom:40px!important;overflow-wrap:anywhere}
  body.page-legal section{grid-template-columns:1fr!important;gap:10px!important;padding:25px 0!important}
  body.page-legal section :is(p,ul,.mono){overflow-wrap:anywhere!important;word-break:normal!important}
}

@media (max-width: 380px){
  .wrap{padding-left:15px!important;padding-right:15px!important}
  body.page-home .brand{max-width:150px!important}
  body.page-home .brand .sub{display:none!important}
  body:is(.page-cad,.page-sale) .logo{font-size:.78rem!important}
  body:is(.page-cad,.page-sale) .logo .sub{display:none!important}
  body:is(.page-cad,.page-sale) .lang-toggle a{min-width:30px!important;padding-inline:6px!important}
  body.page-garden .garden-brand{width:56px!important;flex-basis:56px!important}
  body.page-garden .garden-brand>img{height:52px!important}
  body.page-home .cross-section .floor-row{grid-template-columns:1fr!important;padding-inline:15px!important}
  body.page-home .cross-section .floor-badge{max-width:210px!important;padding:8px 9px!important}
  body.page-home .cross-section .floor-list{gap:4px!important}
  body.page-home .cross-section .floor-list li{font-size:.78rem!important;padding:5px 6px!important}
}

@media (min-width:761px) and (max-width:900px){
  body.page-garden .services-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.page-garden #ablauf .step-body p{font-size:1rem!important;line-height:1.7!important}
  body.page-home .cross-section-bg{background-size:auto 100%!important;background-position:center!important}
  body.page-home .cross-section .floor.f-gold{top:10.5%!important;height:29.5%!important}
  body.page-home .cross-section .floor.f-blue{top:40%!important;height:25.5%!important}
  body.page-home .cross-section .floor.f-moss{top:65.5%!important;height:33%!important}
  body:is(.page-cad,.page-sale) .header-inner{position:relative!important;display:flex!important;flex-wrap:nowrap!important;padding-inline:22px!important;gap:10px!important}
  body:is(.page-cad,.page-sale) .header-cta{display:none!important}
  body:is(.page-cad,.page-sale) .section-menu-toggle{display:inline-flex!important;flex:0 0 42px;width:42px;height:42px;border:0;background:transparent;align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer;color:inherit}
  body:is(.page-cad,.page-sale) .section-menu-toggle span{display:block;width:21px;height:2px;background:currentColor}
  body:is(.page-cad,.page-sale) header nav{display:none!important;position:absolute!important;top:100%!important;left:22px!important;right:22px!important;padding:12px!important;flex-direction:column!important;align-items:stretch!important;background:#fff!important;box-shadow:0 18px 42px rgba(8,38,61,.16)!important;z-index:140!important}
  body.page-sale header nav{background:#101c31!important}
  body:is(.page-cad,.page-sale) header.section-menu-open nav{display:flex!important}
  body:is(.page-cad,.page-sale) header nav a{display:block!important;min-height:44px!important;padding:12px 14px!important}
}

@media (min-width: 901px){
  .section-menu-toggle{display:none!important}
}
