/* A dedicated small-screen composition. Desktop rules remain in their original files. */
.kp-menu-toggle{display:none}
@media(max-width:760px){
  html{scroll-padding-top:88px;scrollbar-gutter:auto;scroll-behavior:auto}
  body{overflow-x:clip;-webkit-text-size-adjust:100%}
  /* iOS tap feedback must not paint a grey rectangle over our controls. */
  body,body *,body *::before,body *::after{-webkit-tap-highlight-color:rgba(0,0,0,0)!important}
  main{min-width:0}
  .wrap,.container{width:calc(100% - 40px);max-width:none}
  .kp-header{position:sticky;top:0;background:#fffdf9}
  .kp-header .kp-nav-wrap{width:calc(100% - 40px);min-height:72px;height:72px;flex-direction:row;justify-content:space-between;align-items:center;padding:0;gap:12px}
  .kp-header .kp-brand{font-size:24px;letter-spacing:-1px;gap:6px}
  .kp-header .kp-brand img{width:35px;height:35px}
  .kp-header .kp-menu-toggle{display:grid;grid-template-columns:64px 16px;align-items:center;justify-content:center;gap:10px;width:116px;min-width:116px;max-width:116px;height:44px;min-height:44px;max-height:44px;flex:0 0 116px;padding:10px 12px;border:1px solid #ded1c1;background:transparent;color:#59483b;font:13px Arial,sans-serif;cursor:pointer;box-shadow:none;border-radius:0;appearance:none;-webkit-appearance:none}
  .kp-header .kp-menu-toggle *{pointer-events:none;user-select:none;-webkit-user-select:none}
  .kp-menu-label{display:block;width:64px;text-align:center;white-space:nowrap}
  .kp-header .kp-menu-toggle:hover,.kp-header .kp-menu-toggle:active,.kp-header .kp-menu-toggle:focus{background:transparent;box-shadow:none}
  .kp-header .kp-menu-toggle:focus:not(:focus-visible){outline:none}
  .kp-header .kp-menu-toggle:focus-visible{outline:2px solid #b65943;outline-offset:3px}
  .kp-header .kp-menu-toggle[hidden]{display:none}
  .kp-menu-icon{width:16px;height:12px;border-top:1.5px solid currentColor;border-bottom:1.5px solid currentColor;position:relative}
  .kp-menu-icon:after{content:'';position:absolute;left:0;right:0;top:4px;border-top:1.5px solid currentColor}
  .kp-header.kp-mobile-ready .kp-nav{display:none;position:absolute;left:0;right:0;top:72px;width:auto;background:#fffdf9;padding:10px 20px 22px;border-bottom:1px solid #d9cab9;box-shadow:none;max-height:calc(100dvh - 72px);overflow-y:auto;gap:0;font-size:17px;grid-template-columns:minmax(0,1fr);align-items:stretch;justify-content:stretch}
  .kp-header.kp-menu-open .kp-nav{display:grid}
  .kp-header.kp-mobile-ready .kp-nav>a,.kp-header.kp-mobile-ready .kp-nav>a:not(.nav-cta){display:flex!important;align-items:center;justify-content:space-between;width:100%;min-height:51px;padding:12px 4px!important;border-bottom:1px solid #eee7dd;font-size:17px;white-space:normal}
  .kp-header.kp-mobile-ready .kp-nav>a:after{content:'';position:static;display:block;height:8px;width:8px;background:none;color:#ac725a;border-right:1.5px solid currentColor;border-top:1.5px solid currentColor;transform:rotate(45deg);margin-right:5px}
  .kp-header.kp-mobile-ready .kp-nav>a[aria-current=page]{color:#b65943}
  .kp-header.kp-mobile-ready .kp-nav>a.kp-contact{margin-top:14px;justify-content:center;color:#fffdf9;background:#b65943;border:1px solid #b65943;padding:13px!important}
  .kp-header.kp-mobile-ready .kp-nav>a.kp-contact:after{display:none}
  .kp-header .kp-menu-toggle[aria-expanded=true]{border-color:#b65943;color:#b65943}
  .kp-header .kp-menu-toggle[aria-expanded=true] .kp-menu-icon{border:0}
  .kp-header .kp-menu-toggle[aria-expanded=true] .kp-menu-icon:before,.kp-header .kp-menu-toggle[aria-expanded=true] .kp-menu-icon:after{content:'';position:absolute;left:0;right:0;top:5px;border-top:1.5px solid currentColor;transform:rotate(45deg)}
  .kp-header .kp-menu-toggle[aria-expanded=true] .kp-menu-icon:after{transform:rotate(-45deg)}
  .hero{display:flex;flex-direction:column;align-items:stretch;gap:24px;min-height:0;padding:29px 0 36px}
  .hero-copy .eyebrow{font-size:9px;letter-spacing:.12em;line-height:1.7;margin-bottom:18px}
  .hero-copy h1{font-size:clamp(42px,11.7vw,58px);line-height:1.07;letter-spacing:-.045em;margin-bottom:22px}
  .hero-copy .lead{font-size:15px;line-height:1.8;margin-bottom:0;max-width:none}
  .hero .actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:24px}
  .hero .actions .button{width:100%;min-height:50px;padding:14px 18px;font-size:14px;border-radius:2px;gap:20px}
  .hero-location{font-size:11px;line-height:1.7;margin-top:20px;max-width:300px}
  .hero-stage{padding:16px 8px 43px;margin:0 auto;width:100%;max-width:410px}
  .hero-stage:before{inset:0 0 24px;border-radius:24px;transform:none}
  .stage-orbit{display:none}
  .hero-browser{transform:rotate(-2deg);filter:drop-shadow(0 8px 14px #67402c1a)}
  .hero .mock-content{min-height:195px}
  .hero .mock-content img{min-height:195px;max-height:220px}
  .hero .mock-content h3{font-size:26px}
  .hero .mock-nav>span{display:none}
  .hero .floating-note{display:none}
  .hero .stage-label{bottom:2px;left:15px;font-size:11px;line-height:1.6}
  .hero .stage-label span{font-size:9px}
  .promise-strip{padding:0}
  .promise-strip .wrap{display:grid;gap:0;padding:8px 0}
  .promise-strip .wrap>span{display:flex;align-items:center;gap:17px;max-width:none;width:100%;font-size:13px;min-height:45px;border-bottom:1px solid #e8dfd4}
  .promise-strip .wrap>span:last-child{border-bottom:0}
  .promise-strip b{display:inline;margin:0;font-size:10px}
  .section{padding-block:48px}
  .section-heading{gap:16px;margin-bottom:26px}
  .section-heading h2,.ease-grid h2,.founder-copy h2,.faq-grid h2{font-size:34px;line-height:1.14}
  .section-heading .eyebrow{font-size:9px;margin-bottom:14px}
  .text-link{font-size:13px;min-height:35px}
  .project-grid{gap:30px}
  .project-visual{padding:22px 18px;border-radius:3px}
  .project-grid .mock-small .mock-content{min-height:180px}
  .project-grid .mock-small .mock-content img{min-height:180px;max-height:190px}
  .project-grid .mock-small .mock-content h3{font-size:24px}
  .project-grid .mock-small .mock-nav>span{display:none}
  .project-meta{font-size:9px;gap:14px;line-height:1.6;margin-top:16px}
  .project-card h3 a{font-size:25px}
  .project-card p{font-size:14px;line-height:1.8;margin-top:12px}
  .fine-print{font-size:11px;line-height:1.85}
  .ease-section{padding:45px 0}
  .ease-grid{gap:24px}
  .ease-grid>div>p:not(.eyebrow),.founder-copy p:not(.eyebrow){font-size:14px;line-height:1.85}
  .ease-list article{gap:15px;padding:21px 0}
  .ease-list h3{font-size:21px;line-height:1.3}
  .ease-list p{font-size:14px;line-height:1.8}
  .founder{gap:27px}
  .founder-art{width:100%;border-radius:3px;padding:20px 20px 55px}
  .founder-art img{max-height:170px}
  .founder-art>span{font-size:18px;left:24px;bottom:20px}
  .cta{width:calc(100% - 40px);padding:26px 23px;margin-bottom:45px;border-radius:2px}
  .cta h2{font-size:33px;line-height:1.15}
  .cta .button{width:100%;min-height:50px;font-size:14px}
  .cta>div{width:100%;align-items:stretch;gap:22px}
  .cta>p{font-size:12px;line-height:1.8;max-width:none}
  .portrait{height:auto;display:flex;flex-direction:column;background:#f8f5ed}
  .portrait-image{position:relative;inset:auto;z-index:auto;object-position:69% 50%;height:255px;width:100%;object-fit:cover}
  .portrait-shade,.portrait .accent-bar{display:none}
  .portrait-copy.container{position:relative;width:calc(100% - 40px);padding:25px 0 28px;color:#30251f}
  .portrait .eyebrow{font-size:9px;color:#94745f;margin-bottom:14px;line-height:1.7}
  .portrait h1{font-size:clamp(30px,8.5vw,40px);line-height:1.13;max-width:none;text-shadow:none}
  .portrait .portrait-contact{display:flex;align-items:center;justify-content:space-between;min-height:50px;width:100%;margin-top:22px;padding:13px 18px;background:#b65943;border:1px solid #b65943;color:#fffdf9;font-size:14px}
  .introduction{margin-top:0}
  .intro-panel{width:100%;padding:25px 23px;border-left:3px solid #c4654c;box-shadow:none}
  .intro-panel .eyebrow{font-size:9px;line-height:1.7}
  .intro-panel h2{font-size:31px}
  .intro-lead{font-size:19px;line-height:1.6;margin-top:17px}
  .intro-columns{gap:16px;margin-top:22px}
  .intro-columns p{font-size:14px;line-height:1.85}
  .intro-signature{gap:7px}
  .intro-signature>span:last-child{font-size:11px}
  .image-credit{font-size:9px;line-height:1.6;text-align:left;margin-top:10px}
  .contact-section{padding:45px 0 50px;scroll-margin-top:85px}
  .contact-layout{display:flex;flex-direction:column;gap:27px}
  .contact-copy h2{font-size:36px;line-height:1.15;margin-bottom:20px}
  .contact-copy>p:not(.eyebrow){font-size:14px;line-height:1.85}
  .contact-details{gap:7px;margin-top:23px;padding-top:20px}
  .contact-details>span{font-size:12px}
  .contact-details a{font-size:16px;min-height:36px;padding:3px 0}
  .contact-form{background:#fffdf9;padding:22px 18px;border:1px solid #ddd5ca}
  .required-note{font-size:11px;line-height:1.7}
  .field{margin-bottom:21px}
  .field label{font-size:14px;line-height:1.6;margin-bottom:8px}
  .field label span{font-size:11px}
  .field input,.field textarea,.contact-form-card input,.contact-form-card textarea{font-size:16px;min-height:52px;padding:13px 12px}
  .field textarea{min-height:170px}
  .field textarea::placeholder{font-size:14px}
  .privacy-note{font-size:11px;line-height:1.85}
  .send-row{flex-wrap:wrap;gap:10px}
  .send-button{min-height:52px;width:100%;min-width:0;font-size:14px}
  .send-caption{font-size:11px}
  .form-status{font-size:13px}
  .offer-banner{height:60px;border-top-width:4px;border-bottom-width:4px}
  .offer-headline{padding-top:27px;margin-bottom:25px}
  .offer-headline .eyebrow{font-size:9px;margin-bottom:14px;line-height:1.7}
  .offer-headline h1{font-size:36px;line-height:1.15}
  .offer-headline .personal-intro{font-size:14px;line-height:1.85;margin-top:20px;padding-left:15px}
  .offer-headline .offer-explainer{font-size:13px;line-height:1.8;padding-top:19px}
  .step-heading{display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px 13px;align-items:center;margin:25px 0 17px}
  .step-heading h2{font:400 23px/1.25 Georgia,serif;letter-spacing:-.025em}
  .step-heading>span:last-child:not(.step-number){grid-column:2;margin:0;font-size:11px;line-height:1.6}
  .offer-cards{gap:17px}
  .offer-card{padding:20px 22px 22px;border-top-width:3px}
  .package-badge-row{min-height:42px;margin-bottom:12px}
  .package-badge-row .package-number{font-size:10px;line-height:1.7}
  .package-kite-1{width:29px;height:29px}.package-kite-2{width:36px;height:36px}.package-kite-3{width:43px;height:43px}
  .offer-card h3{font-size:32px;margin-bottom:10px}
  .package-intro{font-size:14px;line-height:1.7;min-height:0;max-width:none}
  .package-amount{font-size:39px;margin-top:16px}
  .offer-card:last-child .package-amount{font-size:31px;line-height:1.3}
  .package-unit{font-size:12px;margin-top:4px}
  .kp-package-details{border-top:1px solid #ddd5ca;margin:20px 0 16px}
  .kp-package-details>summary{font:13px/1.6 Arial,sans-serif;display:flex;justify-content:space-between;align-items:center;padding:14px 0;min-height:46px;color:#7d6758;list-style:none}
  .kp-package-details>summary:after{content:'+';font:23px Georgia,serif;color:#b65943}
  .kp-package-details[open]>summary:after{content:'−'}
  .kp-package-details .feature-list{border:0;margin:2px 0 13px;padding:0;gap:12px}
  .feature-list li{font-size:14px;line-height:1.7}
  .offer-link{min-height:44px;font-size:14px;padding-top:14px}
  .join-block{padding:21px 0;font-size:12px;gap:12px}
  .join-block:before,.join-block:after{width:30px}
  .care-shell{padding:21px 18px 22px;border-top-width:3px}
  .care-shell>.step-heading{margin-top:0;margin-bottom:20px}
  .care-plans{gap:17px}
  .care-plan,.care-plan+.care-plan{padding:22px 18px;border-top-width:3px}
  .care-plan h3{font-size:27px}
  .care-plan .care-amount{font-size:34px}
  .care-plan .feature-list li{font-size:14px;line-height:1.7}
  .care-note,.offer-notes{font-size:12px;line-height:1.85}
  .personal-style{margin-top:30px;padding:27px 0}
  .personal-style .style-included{justify-self:start;white-space:normal;padding:6px 9px;font-size:10px}
  .personal-style>p{font-size:14px;line-height:1.85}
  .style-points{gap:19px;margin:23px 0}
  .style-points h3{font-size:24px}
  .offer-cta{padding-top:24px;margin-top:25px}
  .offer-cta p{font-size:18px;line-height:1.65}
  .offer-cta a{display:flex;justify-content:space-between;width:100%;min-height:50px;font-size:14px}
  .offer-reveal-ready [data-offer-reveal]{opacity:1;transform:none;transition:none;will-change:auto}
  .pc-intro{padding:29px 20px 25px}
  .pc-intro h1{font-size:39px;line-height:1.12;margin:17px 0}
  .pc-intro .eyebrow{font-size:9px;line-height:1.7;letter-spacing:.12em}
  .pc-intro>p:last-child{font-size:15px;line-height:1.8;max-width:330px;margin:auto}
  .pc-carousel{display:grid;grid-template-columns:1fr 1fr;padding-bottom:15px}
  .pc-stage{height:280px;grid-column:1/-1;grid-row:1;perspective:none}
  .pc-slide{width:calc(100% - 64px);max-width:420px;height:248px;top:12px;box-shadow:0 9px 20px #30251f17}
  .pc-slide.is-prev{transform:translateX(-151%) scale(.92);opacity:.55}
  .pc-slide.is-next{transform:translateX(51%) scale(.92);opacity:.55}
  .pc-slide.is-far{transform:translateX(-50%) scale(.8);opacity:0}
  .pc-slide .pc-cover-nav{padding:12px 15px;min-height:43px}
  .pc-slide .pc-cover-nav>strong{font-size:21px}
  .pc-slide .pc-cover-copy{padding:18px;gap:9px}
  .pc-slide .pc-cover-copy>strong{font-size:27px;line-height:1.08}
  .pc-cover-copy>small{font-size:8px;line-height:1.5}
  .pc-cover-copy>span{font-size:10px}
  .pc-yours>strong{font-size:29px;line-height:1.12}
  .pc-yours>img{width:58px;height:58px}
  .pc-yours>span:last-child{font-size:10px;max-width:240px;line-height:1.7}
  .pc-arrow{position:static;grid-row:2;margin:0 0 21px;width:44px;height:44px}
  .pc-prev{grid-column:1;justify-self:end;margin-right:12px}.pc-next{grid-column:2;justify-self:start;margin-left:12px}
  .pc-caption{grid-column:1/-1;grid-row:3;min-height:220px;padding:0 25px;max-width:470px;width:100%}
  .pc-category{font-size:9px;line-height:1.8;min-height:32px;margin-bottom:8px}
  .pc-title{font-size:31px;line-height:1.2;min-height:38px;margin-bottom:12px}
  .pc-description{font-size:14px;line-height:1.8;min-height:80px;max-width:340px}
  .pc-project-link{font-size:14px;min-height:40px}
  .pc-playback{grid-column:1/-1;grid-row:4;gap:10px;font-size:11px;margin:15px 20px 0;line-height:1.8}
  .pc-playback>span{width:100%;text-align:center}
  .pc-pause{min-height:40px}
  .pc-note{margin:25px 20px 0;padding:30px 0 40px}
  .pc-note h2{font-size:31px;line-height:1.2}
  .pc-note>p:not(.eyebrow){font-size:14px;line-height:1.85}
  .pc-note .pc-disclosure{font-size:11px!important;line-height:1.8}
  .rc-intro{padding:26px 20px 30px}
  .rc-intro .eyebrow{margin-top:24px;font-size:9px;line-height:1.9}
  .rc-intro h1{font-size:36px;line-height:1.15;margin:17px 0}
  .rc-lead{font-size:15px;line-height:1.85}
  .rc-label{font-size:11px;line-height:1.8;margin-top:20px}
  .rc-summary{margin:0 20px}
  .rc-summary>div,.rc-summary>div:first-child{padding:17px 0}
  .rc-summary span{font-size:10px}
  .rc-summary p{font-size:14px;line-height:1.8;margin:8px 0 0}
  .rc-story,.rc-performance{padding:31px 20px;gap:14px}
  .rc-case h2{font-size:29px;line-height:1.22;margin:12px 0 17px}
  .rc-story>div>p:not(.eyebrow),.rc-performance>div>p:not(.eyebrow){font-size:14px;line-height:1.9}
  .rc-design{padding:30px 14px}
  .rc-design-heading{padding:0 6px;margin-bottom:18px}
  .rc-design-heading>p{font-size:11px;line-height:1.85;max-width:330px}
  .rc-design-heading>p br{display:none}
  .rc-tabs{gap:4px}
  .rc-tabs button{display:flex;flex-direction:column;justify-content:center;gap:4px;min-height:59px;padding:9px 5px;font-size:11px;line-height:1.5}
  .rc-tabs button small{margin:0;font-size:9px}
  .rc-viewport{height:580px;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);overflow:hidden}
  .rc-screen{min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;scrollbar-width:thin}
  .rc-screen .rc-browser{position:sticky;top:0;z-index:4;font-size:8px;min-height:29px;padding:9px 10px}
  .rc-screen .rc-browser>span{font-size:8px;line-height:1.5}
  .rc-web-nav{padding:17px 16px;gap:10px}
  .rc-web-nav strong{font-size:23px}
  .rc-web-nav>span{max-width:145px;font-size:8px;line-height:1.7}
  .rc-bloom-hero>div,.rc-about,.rc-simple-contact{padding:25px 20px}
  .rc-screen h3{font-size:35px;line-height:1.14}
  .rc-screen p{font-size:13px;line-height:1.8}
  .rc-about{gap:23px}.rc-about-photo{height:210px}
  .rc-simple-contact .rc-contact-options{gap:15px}
  .rc-assist-hero{padding:28px 20px}
  .rc-assist-hero h3,.rc-bike-hero h3{font-size:35px}
  .rc-chat-backdrop{padding:25px 20px}
  .rc-chat-sidebar{padding:20px}
  .rc-chat-message{font-size:12px}
  .rc-chat-input{font-size:12px;min-height:45px}
  .rc-package-grid article{padding:22px 18px}
  .rc-package-grid .rc-action{width:100%;min-height:45px;font-size:12px}
  .rc-package-grid ul{font-size:12px;line-height:2.2}
  .rc-bike-hero{min-height:370px;padding:28px 22px}
  .rc-location>div:first-child{padding:26px 20px}
  .rc-map-refined{min-height:330px}
  .rc-events{padding:25px 18px}
  .rc-event-list article{grid-template-columns:42px minmax(0,1fr);gap:14px;padding:20px 0}
  .rc-event-button{grid-column:2;width:100%;max-width:180px;height:44px;margin:0;font-size:10px}
  .rc-event-list h4{font-size:22px;line-height:1.2}
  .rc-event-list p{font-size:12px;line-height:1.8}
  .rc-controls{gap:15px;margin-top:18px}
  .rc-controls button{width:44px;height:44px;flex-basis:44px}
  .rc-counter{width:auto;flex:1;max-width:205px;min-width:0;font-size:11px;line-height:1.6;white-space:normal}
  .rc-scroll-hint{max-width:1160px;margin:13px auto 0;text-align:center;color:#8b7765;font:11px/1.8 Arial,sans-serif}
  .rc-metric-box{padding:20px 14px;overflow-wrap:anywhere}
  .rc-metric-box table{font-size:11px;table-layout:fixed}
  .rc-metric-box th:first-child{width:46%}
  .rc-metric-box th,.rc-metric-box td{padding:13px 5px;line-height:1.7}
  .rc-ending{padding:34px 20px 43px}
  .rc-ending h2{font-size:35px;line-height:1.18}
  .rc-main-cta{display:block;min-height:50px;padding:15px 14px;font-size:14px}
  .rc-next-case{font-size:13px;min-height:42px;padding:8px 0;line-height:1.7}
  .rc-fiction{font-size:11px;line-height:1.85}
  .kw-main{padding:29px 0 35px}
  .kw-intro{margin-bottom:25px}
  .kw-eyebrow{font-size:9px;line-height:1.7;margin-bottom:15px}
  .kw-intro h1{font-size:36px;line-height:1.14}
  .kw-intro>p:not(.kw-eyebrow):not(.kw-author){font-size:14px;line-height:1.9;margin-top:20px}
  .kw-author{font-size:11px;line-height:1.85}
  .kw-layout{gap:23px}
  .kw-map{padding:20px;background:#f1e9de}
  .kw-map h2{font-size:23px}
  .kw-count{font-size:12px;margin-bottom:13px}
  .kw-progress{margin-bottom:15px}
  .kp-topic-details{border-top:1px solid #d7c9b8}
  .kp-topic-details>summary{font-size:14px;min-height:48px;align-items:center;padding:13px 0;list-style:none;display:flex;justify-content:space-between;gap:14px}
  .kp-topic-details>summary:after{content:'+';font:23px Georgia,serif;color:#b65943}
  .kp-topic-details[open]>summary:after{content:'−'}
  .kp-topic-details ol{display:grid;grid-template-columns:1fr;gap:0}
  .kp-topic-details li a{font-size:13px;min-height:44px;align-items:center;padding:8px 0}
  .kp-topic-details .kw-faq-link{font-size:13px;padding:17px 0 5px;margin-top:10px;line-height:1.8}
  .kw-map .kw-faq-link>span:first-child{display:inline}
  .kw-chapter{padding:24px 20px;margin-bottom:20px;scroll-margin-top:88px}
  .kw-chapter h2{font-size:28px;line-height:1.25;margin-bottom:20px}
  .kw-chapter>p:not(.kw-number),.kw-list{font-size:14px;line-height:1.9}
  .kw-terms p{font-size:14px;line-height:1.8}
  .kw-terms h3{font-size:24px}
  .kw-number{font-size:9px;line-height:1.8;margin-bottom:15px}
  .kw-search-steps span{font-size:13px;line-height:1.85}
  .kw-faq h2{font-size:32px}
  .kw-faq-intro{font-size:14px;line-height:1.85}
  .kw-faq summary{font-size:14px;padding:18px;min-height:60px;gap:18px}
  .kw-faq details p{font-size:14px;line-height:1.9;padding:0 18px 20px}
  .kw-contact a{display:block;min-height:50px;font-size:14px;text-align:center}
  .kw-motion .kw-chapter{opacity:1;transform:none;transition:none}
  .page-intro{padding-top:30px;padding-bottom:30px}
  .page-intro h1{font-size:36px;line-height:1.18}
  .page-intro .lead{font-size:15px;line-height:1.85}
  .legal{width:calc(100% - 40px);padding-top:30px;overflow-wrap:anywhere}
  .legal h1{font-size:34px}
  .legal p,.legal li{font-size:14px;line-height:1.9}
  .contact-grid{gap:25px;padding-bottom:45px}
  .contact-form-card{padding:23px 18px}
  .kp-footer{padding:30px 0 22px}
  .kp-footer-inner{width:calc(100% - 40px)}
  .kp-footer-top{grid-template-columns:1fr;gap:26px;padding-bottom:25px}
  .kp-footer-brand{grid-column:auto}
  .kp-footer-brand p{font-size:18px;margin:15px 0 10px}
  .kp-footer-email{display:inline-flex;align-items:center;min-height:38px;font-size:14px}
  .kp-footer-menu{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}
  .kp-footer-menu>p{grid-column:1/-1;margin-bottom:7px}
  .kp-footer-menu>a{min-height:40px;display:flex;align-items:center;font-size:13px}
  .kp-footer-legal{gap:0}
  .kp-footer-legal>p{margin-bottom:8px}
  .kp-footer-legal>a,.kp-footer-legal>button{min-height:36px;padding:7px 0;font-size:12px;line-height:1.8}
  .kp-footer-legal>span{font-size:10px;max-width:none;margin-top:10px}
  .kp-footer-bottom{flex-direction:column;align-items:flex-start;gap:7px;font-size:10px;padding-top:19px}
  #kite-guide .kg-toggle{width:52px;height:52px;right:14px;bottom:max(14px,env(safe-area-inset-bottom));padding:3px;box-shadow:0 4px 16px #30251f17}
  #kite-guide .kg-toggle img{width:43px;height:43px}
  #kite-guide .kg-badge{width:20px;height:20px;font-size:10px}
  #kite-guide .kg-panel{width:100%;max-width:none;top:0;height:100dvh;bottom:auto;border-left:0}
  #kite-guide .kg-head{padding:18px 20px;gap:12px}
  #kite-guide .kg-close{width:44px;height:44px;flex-shrink:0;font-size:25px}
  #kite-guide .kg-head h2{font-size:25px}
  #kite-guide .kg-head p{font-size:10px;line-height:1.7}
  #kite-guide .kg-body{padding:23px 20px}
  #kite-guide .kg-intro{font-size:14px;line-height:1.8}
  #kite-guide .kg-question{font-size:27px;line-height:1.2}
  #kite-guide .kg-hint{font-size:13px;line-height:1.8}
  #kite-guide .kg-option{font-size:15px;padding:16px;min-height:72px}
  #kite-guide .kg-option small{font-size:12px;line-height:1.7}
  #kite-guide .kg-foot{padding:12px 20px max(12px,env(safe-area-inset-bottom));min-height:60px}
  #kite-guide .kg-text-button{font-size:13px;min-height:40px}
  .kp-input-focus #kite-guide .kg-toggle{visibility:hidden}
  #kp-privacy-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:23px 20px 19px;overflow-wrap:anywhere}
  #kp-privacy-dialog h2{font-size:29px;margin-bottom:15px}
  #kp-privacy-dialog p{font-size:13px;line-height:1.75;margin-bottom:13px}
  #kp-privacy-dialog .pp-detail{padding:13px 14px;margin:12px 0}
  #kp-privacy-dialog .pp-detail strong{font-size:13px;line-height:1.6}
  #kp-privacy-dialog .pp-detail p{font-size:12px;line-height:1.75}
  #kp-privacy-dialog .pp-actions{position:sticky;bottom:-19px;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px -2px 0;padding:12px 2px;background:#fffdf9;border-top:1px solid #e9dfd3;z-index:1}
  #kp-privacy-dialog .pp-actions button{min-height:52px;padding:10px 8px;font-size:12px;line-height:1.6}
  #kp-privacy-dialog .pp-links{gap:10px 16px;margin-top:14px;font-size:12px;line-height:1.8}
  #kp-privacy-dialog .pp-draft{font-size:10px;line-height:1.8;padding-top:13px;margin-top:14px}
}
@media(max-width:350px){
  .kp-header .kp-nav-wrap{width:calc(100% - 30px)}
  .kp-header .kp-brand{font-size:22px}.kp-header .kp-brand img{width:30px;height:30px}
  .kp-header .kp-menu-toggle{padding:10px 12px}
  .hero-copy h1{font-size:40px}
  .rc-tabs button{font-size:10px}
  .pc-slide .pc-cover-copy>strong{font-size:24px}
}
