/* KOCH Espresso Service — static website, no external fonts or dependencies */
:root{--ink:#242422;--muted:#66635e;--copper:#9b5c3c;--copper-dark:#7d442b;--ivory:#f8f6f1;--sand:#efeae1;--white:#fff;--line:#e2dcd2;--shadow:0 28px 68px rgba(34,29,25,.07)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--ivory);color:var(--ink);font:400 16px/1.65 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--copper);outline-offset:4px}img{display:block;max-width:100%}.container{width:min(1170px,calc(100% - 64px));margin:auto}.skip-link{position:absolute;top:-70px;left:10px;z-index:100;padding:12px;background:#fff}.skip-link:focus{top:10px}.site-header{position:relative;z-index:2;background:rgba(248,246,241,.98);border-bottom:1px solid rgba(70,54,40,.09)}.header-inner{height:93px;display:flex;align-items:center;gap:34px}.brand{text-decoration:none;display:flex;flex-direction:column;line-height:1;min-width:198px}.brand-name{font-weight:900;letter-spacing:.15em;font-size:27px}.brand-dot{color:var(--copper);margin-left:1px}.brand-sub{margin-top:6px;color:var(--copper);font-size:10px;font-weight:800;letter-spacing:.22em}.main-nav{display:flex;align-items:center;justify-content:center;gap:36px;flex:1}.main-nav a{text-decoration:none;font-size:13px;font-weight:600;transition:color .2s}.main-nav a:hover,.text-link:hover,.footer-links a:hover{color:var(--copper)}.header-contact{text-decoration:none;font-size:13px;font-weight:700;white-space:nowrap;border-bottom:1px solid var(--copper);padding-bottom:5px}.header-contact span{margin-left:15px;color:var(--copper)}
h1,h2,h3,p{margin-top:0}h1,h2{letter-spacing:-.052em;line-height:1.12;font-weight:700}h1{font-size:clamp(49px,5.25vw,78px);max-width:700px;margin-bottom:26px}h2{font-size:clamp(38px,4.1vw,59px);margin-bottom:22px}h1 em,h2 em{color:var(--copper);font-style:normal}.eyebrow{display:flex;align-items:center;gap:12px;letter-spacing:.19em;font-size:10px;font-weight:800;color:var(--copper);margin-bottom:25px}.eyebrow-line{display:inline-block;background:currentColor;width:29px;height:1px}.hero{overflow:hidden}.hero-grid{min-height:690px;display:grid;grid-template-columns:1.1fr .9fr;gap:26px;align-items:center;padding:63px 0 91px}.hero-copy{position:relative;z-index:1}.hero-lead{max-width:520px;font-size:18px;color:var(--muted);line-height:1.84;margin-bottom:32px}.hero-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;gap:35px;justify-content:space-between;text-decoration:none;min-height:53px;padding:13px 22px;font-size:13px;font-weight:700;transition:background .2s,transform .2s,color .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--copper);color:#fff}.button-primary:hover{background:var(--copper-dark)}.button span{font-size:20px;line-height:1}.text-link{text-decoration:none;font-size:13px;font-weight:700}.text-link span{color:var(--copper);padding-left:10px}.hero-meta{margin-top:55px;display:flex;gap:24px;color:#7a7770;font-size:12px;align-items:center}.hero-meta span:first-child{display:flex;gap:8px;align-items:center}.hero-meta i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--copper)}.hero-visual{height:570px;position:relative;display:flex;align-items:center;justify-content:center}.visual-orbit{position:absolute;border:1px solid #e8dfd3;border-radius:50%;aspect-ratio:1}.orbit-one{width:560px;left:10%;top:0}.orbit-two{width:435px;left:22%;top:10%}.hero-logo-card{width:min(465px,95%);padding:30px 18px;position:relative;z-index:1;transform:rotate(-2deg);background:rgba(255,255,255,.67);box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.95)}.hero-logo{mix-blend-mode:multiply;width:100%;height:auto}.visual-index{position:absolute;z-index:1;bottom:18px;right:8px;font-size:10px;letter-spacing:.15em;color:var(--copper);font-weight:700}.service-strip{background:var(--ink);color:#f6f2eb}.service-strip-inner{min-height:72px;display:flex;justify-content:space-between;align-items:center;gap:15px}.service-strip span{font-size:10px;letter-spacing:.17em;font-weight:700}.service-strip .separator{color:#b47f5e;font-size:16px;font-weight:400}.section{padding:110px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:40px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:385px;margin-bottom:7px;color:var(--muted);font-size:15px;line-height:1.8}.service-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{min-height:342px;position:relative;background:#fff;padding:31px 35px 34px;border:1px solid #ebe5db;transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.service-number{color:#b8ada2;font-size:12px;font-weight:700;letter-spacing:.12em}.service-glyph{width:76px;height:76px;color:var(--copper);margin-top:20px;margin-bottom:17px}.service-glyph svg{width:65px;height:65px}.service-card h3{font-size:21px;letter-spacing:-.025em;margin-bottom:12px;line-height:1.3}.service-card p{color:var(--muted);font-size:14px;line-height:1.75;margin-bottom:0}.services-note{font-size:13px;margin:24px 0 0;color:var(--muted)}.services-note span{color:var(--copper);font-size:18px;margin-right:7px}.process{background:#f0ece5}.process-grid{display:grid;grid-template-columns:1fr 1fr;gap:14%;align-items:start}.process-intro p:not(.eyebrow){color:var(--muted);max-width:460px;font-size:15px;line-height:1.85;margin-bottom:30px}.button-outline{border:1px solid var(--copper);color:var(--copper);background:transparent}.button-outline:hover{background:var(--copper);color:white}.process-steps{padding-top:10px}.process-step{display:grid;grid-template-columns:59px 1fr;gap:20px;padding:28px 0;border-top:1px solid #d8d0c4}.process-step:last-child{border-bottom:1px solid #d8d0c4}.step-number{color:var(--copper);font-size:15px;font-weight:700}.process-step h3{font-size:20px;margin-bottom:7px}.process-step p{font-size:14px;color:var(--muted);margin:0;max-width:430px}.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:10%;align-items:center}.about-art{background:#eae2d6;padding:31px;min-height:440px;display:flex;box-shadow:15px 15px 0 #f0e9df}.about-art-inner{width:100%;min-height:370px;border:1px solid #b7a694;display:flex;flex-direction:column;justify-content:space-between;align-items:center;padding:18px;text-align:center}.art-top,.art-bottom{color:#80624f;font-size:10px;letter-spacing:.21em;font-weight:700}.art-glyph{font-size:clamp(140px,15vw,230px);font-weight:900;line-height:1;letter-spacing:-.13em;color:#292825}.art-glyph span{color:var(--copper)}.about-content p:not(.eyebrow){color:var(--muted);line-height:1.86;font-size:15px;margin-bottom:19px}.about-content strong{color:var(--ink)}.about-facts{display:flex;gap:10px;flex-wrap:wrap;margin-top:33px}.about-facts span{font-size:11px;color:#704d3b;border:1px solid #d7c6b7;padding:7px 11px}.contact{padding-top:24px}.contact-panel{background:#252524;color:#fff;min-height:434px;padding:73px 80px;display:grid;grid-template-columns:1.23fr .77fr;gap:9%}.contact .eyebrow-light{color:#cd926b}.contact h2{font-size:clamp(38px,3.6vw,54px)}.contact h2 em{color:#d3a07c}.contact-copy p:not(.eyebrow){color:#d0ccc6;line-height:1.84;max-width:515px;font-size:15px;margin-bottom:28px}.button-light{background:#f8f6f1;color:var(--ink)}.button-light:hover{background:#e9ded2}.contact-details{border-left:1px solid #59534e;padding-left:50px;display:flex;flex-direction:column;justify-content:center;gap:28px}.contact-details div>span{display:block;color:#c58d68;font-size:10px;letter-spacing:.17em;font-weight:700;margin-bottom:7px}.contact-details a{color:#fff;text-decoration:none;font-size:16px;word-break:break-word}.contact-details a:hover{text-decoration:underline}.contact-details p{color:#d0ccc6;margin:0;font-size:14px;line-height:1.8}.site-footer{padding:65px 0 40px}.footer-inner{display:flex;justify-content:space-between;gap:30px}.footer-brand{font-weight:900;font-size:22px;letter-spacing:.1em;line-height:1}.footer-brand span{color:var(--copper);font-size:11px;letter-spacing:.14em;margin-left:8px}.site-footer p{color:var(--muted);font-size:13px;margin:16px 0 0}.footer-right{text-align:right;display:flex;align-items:end;flex-direction:column;gap:15px}.footer-right>a{font-size:14px;text-decoration:none}.footer-links{display:flex;gap:20px;flex-wrap:wrap}.footer-links a,.footer-right small{font-size:12px;color:var(--muted);text-decoration:none}.legal{min-height:55vh;padding:85px 0 110px}.legal-inner{max-width:760px}.legal h1{font-size:clamp(40px,4vw,57px);margin-bottom:22px}.legal h2{font-size:22px;letter-spacing:-.02em;margin:38px 0 11px}.legal p,.legal li{color:var(--muted);font-size:15px}.legal a{color:var(--copper)}.legal-warning{background:#fff3e7;border-left:4px solid var(--copper);padding:18px 20px;margin:28px 0;color:#72442d;font-size:14px;line-height:1.7}.legal-info{padding:24px 27px;background:#fff;border:1px solid #e7dfd5}.legal-info p{margin-bottom:0}.legal .back-link{display:inline-block;margin-top:30px;text-decoration:none;font-weight:700;font-size:14px}
@media(max-width:1050px){.hero-grid{grid-template-columns:1.1fr .9fr;gap:5px}.hero-visual{height:460px}.orbit-one{width:445px}.orbit-two{width:330px}.hero-logo-card{width:min(355px,95%)}.contact-panel{padding:58px 50px;gap:6%}.contact-details{padding-left:30px}.about-grid{gap:6%}.main-nav{gap:22px}}
@media(max-width:790px){.container{width:min(100% - 38px,650px)}.header-inner{height:84px}.brand{min-width:0}.brand-name{font-size:24px}.main-nav{display:none}.header-contact{margin-left:auto}.hero-grid{grid-template-columns:1fr;min-height:0;padding:70px 0 64px;gap:10px}.hero h1{max-width:590px}.hero-lead{font-size:17px}.hero-visual{height:420px}.hero-logo-card{width:375px}.orbit-one{left:50%;transform:translateX(-50%)}.orbit-two{left:50%;transform:translateX(-50%)}.hero-meta{margin-top:36px}.visual-index{right:7%}.service-strip-inner{justify-content:center;flex-wrap:wrap;padding:18px 0;column-gap:20px;row-gap:8px}.service-strip-inner span{font-size:9px}.section{padding:75px 0}.section-heading{display:block}.section-heading>p{margin-top:18px}.service-cards{grid-template-columns:1fr;gap:13px}.service-card{min-height:0;padding:28px 30px}.service-glyph{margin-top:9px;margin-bottom:5px}.process-grid,.about-grid{grid-template-columns:1fr;gap:35px}.process-steps{padding-top:6px}.about-art{min-height:320px}.about-art-inner{min-height:280px}.art-glyph{font-size:165px}.contact{padding-top:0}.contact-panel{padding:45px 34px;grid-template-columns:1fr;gap:42px}.contact-details{border-left:0;border-top:1px solid #59534e;padding:29px 0 0;gap:19px}.footer-inner{display:block}.footer-right{text-align:left;align-items:flex-start;margin-top:26px}.legal{padding:60px 0}}
@media(max-width:430px){.brand-name{font-size:22px}.brand-sub{font-size:8px}.header-contact{font-size:12px}.hero-grid{padding-top:56px}h1{font-size:48px}.hero-visual{height:345px}.hero-logo-card{width:295px;padding:20px 11px}.orbit-one{width:330px}.orbit-two{width:265px}.hero-actions{gap:20px}.hero-meta{font-size:11px;gap:14px;flex-wrap:wrap}.service-strip-inner .separator{display:none}.service-strip-inner{flex-direction:column}.service-strip-inner span{font-size:9px}.contact-panel{padding:39px 23px}.contact h2{font-size:38px}.footer-brand span{display:block;margin:10px 0 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.service-card{transition:none}}

/* Launch preview status and accessible legal content */
.launch-notice{background:#eee1d5;border-bottom:1px solid #d9c4b2;color:#5b3a2b}
.launch-notice-inner{display:flex;align-items:center;flex-wrap:wrap;gap:8px 15px;min-height:52px;padding:10px 0;font-size:12px;line-height:1.5}
.launch-notice-inner strong{font-size:11px;letter-spacing:.055em}
.launch-pip{display:inline-block;width:9px;height:9px;background:var(--copper);border-radius:50%;flex-shrink:0}
.legal-info h2:first-child{margin-top:0}.legal-info h2{margin-bottom:7px}.legal-info p{margin:0 0 18px}.legal-info p:last-child{margin:0}
.legal-intro{font-size:16px!important;color:var(--ink)!important;margin-bottom:26px}.legal .subtle{font-size:13px;color:#76716a}
@media(max-width:640px){.launch-notice-inner{gap:5px 9px}.launch-notice-inner span:last-child{flex-basis:100%;padding-left:18px}}
