/* KAMAI: shared readability, navigation and service layouts. */
@font-face{font-family:Narkiss;src:url('/fonts/Narkiss-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Narkiss;src:url('/fonts/Narkiss-Bold.ttf') format('truetype');font-weight:700;font-display:swap}
:root{--km-ink:#171412;--km-paper:#f4eee5;--km-signal:#ff5a47;--km-body:Narkiss,'Arial Hebrew',Arial,sans-serif}
html{scroll-padding-top:6rem}
body{font-family:var(--km-body);font-size:1rem;line-height:1.75}
.km-page{margin:0;background:var(--km-ink);color:var(--km-paper)}
.km-page *,.km-page *::before,.km-page *::after{box-sizing:border-box}
.km-page img{max-width:100%}
h1,h2,h3,.logo,.knav-logo,.km-logo,.door-q,.stat .n,.world h3{font-family:Narkiss,Arial,sans-serif}
button,input,select,textarea{font:inherit}
p,.lede,.lead,.aside,.p-body,.door-t,.wlist,.stat .t{line-height:1.75}
.lede,.lead{font-size:clamp(1rem,1.6vw,1.2rem)}
.door-t,.reel-item figcaption,.fw-meta em,.field label,.whoform p,.hero-alt,.fine,.frow{font-size:max(14px,1em)}
.door-t,.hero-alt{font-size:1rem}
.hero .strap.he{font-family:var(--km-body);font-size:clamp(1rem,1.7vw,1.3rem);letter-spacing:0;line-height:1.8;max-width:49rem;margin-inline:auto;min-height:0}
.hero .hero-drop{display:none}
.hero-core .km-actions{justify-content:center}
.hero-core h1{font-size:clamp(3.6rem,7.5vw,7.5rem);line-height:1.04}
.hero .hero-k{opacity:.28}
.hero .doors{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-top:2.2rem}
.door-q{font-size:clamp(1.7rem,2.1vw,2.2rem);line-height:1.15}
.hero .door{padding:1.4rem 1rem}
.km-actions{display:flex;gap:.8rem;flex-wrap:wrap;align-items:center;margin-top:1.5rem}
.km-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.8rem 1.4rem;border:1px solid var(--km-signal);background:var(--km-signal);color:var(--km-ink);font-family:var(--km-body);font-size:1rem;font-weight:700;text-decoration:none;line-height:1.4}
.km-button.secondary{background:transparent;color:var(--km-paper);border-color:#B8B5AE}
.km-light .km-button.secondary{color:var(--km-ink);border-color:#171412}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--km-signal);outline-offset:4px}
.km-header{position:fixed;inset:0 0 auto;z-index:120;background:#171412f5;color:var(--km-paper);border-bottom:1px solid #f4eee529;backdrop-filter:blur(10px)}
.km-bar{max-width:1280px;min-height:76px;padding:.8rem 1.5rem;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:1.4rem}
.km-logo{font-size:1.9rem;line-height:1;letter-spacing:.025em;color:var(--km-paper);text-decoration:none;direction:ltr}
.km-logo b{color:var(--km-signal)}
.km-primary{display:flex;align-items:center;gap:1.5rem;margin-inline:auto}
.km-primary a,.km-menu a{color:inherit;text-decoration:none}
.km-primary a{font-size:1rem;padding:.45rem 0;white-space:nowrap}
.km-primary a:hover,.km-primary a[aria-current=page],.km-menu a:hover{color:var(--km-signal)}
.km-head-actions{display:flex;gap:.8rem;align-items:center}
.km-menu-toggle{min-height:44px;background:transparent;border:1px solid #f4eee552;color:var(--km-paper);padding:.5rem .8rem;cursor:pointer;white-space:nowrap}
.km-menu{width:min(1100px,calc(100% - 2rem));max-height:calc(100dvh - 2rem);margin:auto;padding:1.5rem 2rem 2rem;background:var(--km-ink);color:var(--km-paper);border:1px solid #f4eee54d;overflow:auto}
.km-menu::backdrop{background:#000b;backdrop-filter:blur(4px)}
.km-menu-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.8rem}
.km-menu-top h2{font-size:2.5rem;margin:0}
.km-menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}
.km-menu h3{font-size:1.9rem;line-height:1.15;color:var(--km-signal);margin:0 0 .8rem}
.km-menu ul{list-style:none;margin:0;padding:0}
.km-menu li a{display:block;padding:.65rem 0;font-size:1rem;border-bottom:1px solid #f4eee51a}
.km-menu-footer{display:flex;gap:1.5rem;flex-wrap:wrap;border-top:1px solid #f4eee533;margin-top:1.5rem;padding-top:1.5rem}
.km-service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-top:2rem}
.km-service-card{border:1px solid #f4eee53b;padding:1.5rem;display:flex;flex-direction:column;gap:1rem;background:#171412}
.km-service-card h3{font-size:2.4rem;line-height:1.05;margin:0;color:var(--km-paper)}
.km-service-card p{font-size:1rem;margin:0;color:#B8B5AE}
.km-service-card a{color:#F4EEE5;text-underline-offset:.3em;margin-top:auto;font-size:1rem}
.km-service-card .km-sub-link{margin-top:0}
.km-section{padding:clamp(3rem,6vw,6rem) 0}
.km-wrap{max-width:1200px;margin-inline:auto;padding-inline:1.5rem}
.km-light{background:var(--km-paper);color:var(--km-ink)}
.km-kicker{font-size:.9rem;font-weight:700;color:var(--km-signal);margin:0 0 1.1rem;letter-spacing:.015em}
.km-light .km-kicker{color:#711f33}
.km-section h2{font-size:clamp(2.5rem,5vw,4.6rem);line-height:1.08;margin:0 0 1.4rem}
.km-section h3{font-size:clamp(1.9rem,3vw,2.5rem);line-height:1.15}
.km-section p{font-size:1.05rem;max-width:66ch;margin-bottom:1rem}
.km-split{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(2rem,5vw,5rem);align-items:center}
.km-page-hero{padding-top:9rem}
.km-page-hero h1{font-size:clamp(3.5rem,7vw,6.5rem);line-height:1.05;margin:0 0 1.3rem}
.km-page-hero h1 span{color:var(--km-signal)}
.km-portrait{width:100%;max-height:560px;object-fit:contain;display:block;background:#171412}
.km-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.3rem;margin-top:2rem}
.km-card{border-top:3px solid var(--km-signal);padding:1.6rem;background:#171412;color:var(--km-paper)}
.km-light .km-card{background:#F4EEE5;color:var(--km-ink);border:1px solid #17141233;border-top:3px solid var(--km-signal)}
.km-card h3{margin:0 0 1rem}
.km-card p{font-size:1rem}
.km-card ul{padding-inline-start:1.2rem;margin:.8rem 0;line-height:1.8}
.km-card a{color:inherit;text-underline-offset:.3em}
.km-grid-media{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.km-video{margin:0;min-width:0}
.km-video video{display:block;width:100%;aspect-ratio:9/16;background:#171412;object-fit:contain}
.km-video figcaption{font-size:1rem;line-height:1.65;margin-top:.7rem}
.km-video figcaption strong{display:block}
.km-video figcaption a{color:inherit}
.km-mini-showcase{max-width:780px;margin:2.5rem auto 0;display:grid;grid-template-columns:1fr 1fr;gap:1rem;text-align:right}
.km-mini-showcase .km-video video{aspect-ratio:4/3;object-fit:contain;max-height:240px}
.km-mini-showcase figcaption{font-size:.9rem}
.reel-item video{cursor:auto;object-fit:contain}
.reel-item figcaption a{color:#711f33;font-weight:700}
.km-check-actions{margin:1.7rem 0;text-align:right;padding:0;list-style:none}
.km-check-actions li{border-top:1px solid #f4eee54d;padding:1rem 0;font-size:1rem;line-height:1.75}
.km-check-actions strong{display:block;color:#F4EEE5}
.km-check-actions a{display:inline-block;color:var(--km-paper);margin-top:.5rem;text-underline-offset:.3em}
.km-check-note{font-size:.9rem!important;line-height:1.7;color:#B8B5AE}
.km-section table{width:100%;border-collapse:collapse;font-size:1rem;line-height:1.7;margin-top:1.5rem}
.km-section th,.km-section td{text-align:right;vertical-align:top;padding:1rem;border-bottom:1px solid #f4eee53b}
.km-section th{color:#F4EEE5}
.km-section details{border-top:1px solid #f4eee53b;padding:1rem 0}
.km-section summary{cursor:pointer;font-weight:700;font-size:1.05rem}
.km-section details p{padding-top:.8rem}
.km-footer{padding:2.5rem 1.5rem;border-top:1px solid #f4eee533;display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem;font-size:.95rem}
.km-footer a{color:var(--km-paper)}
@media(max-width:1080px){.km-primary{gap:1rem}.km-head-actions .km-button{display:none}.km-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero .doors{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.km-primary{display:none}.km-bar{min-height:68px;padding:.75rem 1.1rem}.km-menu-grid{grid-template-columns:1fr}.km-menu{padding:1.3rem}.km-split,.km-card-grid{grid-template-columns:1fr}.km-page-hero{padding-top:7rem}.km-grid-media{grid-template-columns:1fr 1fr}.km-grid-media .km-video:last-child{grid-column:1/-1;max-width:360px;width:100%;margin-inline:auto}.km-section{padding:3rem 0}.km-page-hero{padding-top:7rem}.km-service-card{padding:1.2rem}.km-portrait{max-height:400px}.hero .door-q{font-size:1.7rem}.hero .door-t{font-size:.9rem}.km-mini-showcase{grid-template-columns:1fr}.km-mini-showcase .km-video video{max-height:280px}.reel{grid-template-columns:1fr!important}.reel-item:nth-child(3){display:block!important}.reel-item video{max-height:500px}.hero h1{font-size:clamp(3rem,11vw,5rem)}}
@media(max-width:420px){.km-service-grid{grid-template-columns:1fr}.km-grid-media{grid-template-columns:1fr}.hero .doors{gap:.7rem}.km-wrap{padding-inline:1.1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal,.rv{opacity:1!important;transform:none!important}}

/* Owner brand rules and readable text in the licensed family. */
.km-refined-page{font-family:Narkiss,Arial,sans-serif;font-size:20px;line-height:1.75;--ink:#171412;--bone:#F4EEE5;--merlot:#711F33;--signal:#FF5A47;--chrome:#B8B5AE;--paper:#F4EEE5}
.km-refined-page h1,.km-refined-page h2,.km-refined-page h3{font-family:Narkiss,Arial,sans-serif}
.km-refined-page .gridded,.km-refined-page .light.gridded{background-image:none}
.km-refined-page .band:before,.km-refined-page .band:after{background-image:none}
.km-refined-page .form-card,.km-refined-page .ah-plate{background:#711F33}
.km-refined-page .km-section p,.km-refined-page .km-card p,.km-refined-page .km-service-card p{font-size:20px;line-height:1.75}
.km-refined-page .km-button,.km-refined-page .km-text-link,.km-refined-page .km-check-actions li,.km-refined-page .km-check-actions a{font-size:20px}
.km-refined-page .km-kicker,.km-refined-page .km-eyebrow,.km-refined-page .km-work-type{font-size:18px;letter-spacing:0}
.km-refined-page .km-primary a,.km-refined-page .km-menu-toggle,.km-refined-page .km-menu li a{font-size:20px}
.km-refined-page .km-page-hero h1 span{color:#F4EEE5}
.km-refined-page .km-page-hero{border-bottom:2px solid #FF5A47}
.km-refined-page .km-light .km-page-hero h1 span{color:#171412}
