:root{--navy:#203d79;--deep:#172f5c;--pink:#d60075;--ink:#172943;--muted:#526175;--line:#dce2eb;--ice:#f1f5f9;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:var(--white);font-family:-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Malgun Gothic",Arial,sans-serif;line-height:1.7;word-break:keep-all}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:3px solid var(--pink);outline-offset:5px}a:hover{text-decoration:underline;text-underline-offset:5px}.wrap{width:min(1180px,calc(100% - 80px));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;top:-80px;left:16px;background:white;padding:12px;z-index:20}.skip:focus{top:12px}
.site-header{position:sticky;top:0;background:white;z-index:10}.header-inner{height:92px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:18px}.brand img{width:220px;height:auto}.brand span{border-left:1px solid #c8d0de;padding-left:18px;font-size:12px;letter-spacing:2px;color:var(--navy)}nav{display:flex;align-items:center;gap:32px;font-size:15px;font-weight:600}.nav-contact{border:1px solid var(--navy);padding:9px 18px}.nav-contact span{margin-left:16px}.brand-stripe{height:5px;background:linear-gradient(90deg,var(--pink) 0 25%,#169acc 25% 34%,var(--navy) 34% 78%,#e4469a 78% 100%)}
.hero{display:grid;grid-template-columns:44% 56%;min-height:530px;background:var(--navy);color:#fff}.hero-copy{padding:68px 35px 65px max(40px,calc((100vw - 1180px)/2));align-self:center}.eyebrow{margin:0 0 19px;color:var(--pink);font-size:12px;letter-spacing:2.2px;font-weight:750}.eyebrow.light{color:#ffb9df}h1,h2,h3,p,figure{margin-top:0}h1{font-size:clamp(34px,3.5vw,52px);line-height:1.32;letter-spacing:-2px;font-weight:650;margin-bottom:25px}.hero-intro{font-size:18px;color:#e1e8f4;line-height:1.85;margin-bottom:32px}.hero-photo{position:relative;margin:0;overflow:hidden}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:65% center}.hero-photo figcaption{position:absolute;bottom:24px;right:30px;color:var(--navy);background:rgba(255,255,255,.93);padding:5px 12px;font-size:12px;letter-spacing:.4px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:32px;font-size:15px;font-weight:650;padding:13px 22px;min-height:50px}.button:hover{text-decoration:none;filter:brightness(.94)}.pink{background:var(--pink);color:#fff}.blue{background:var(--navy);color:#fff}.intro-bar{padding-block:30px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}.intro-bar p{font-size:15px;color:var(--muted);margin:0}.intro-bar strong{color:var(--ink);font-weight:600}.text-link{font-size:14px;color:var(--navy);white-space:nowrap}.text-link span{margin-left:25px}
.section{padding-block:80px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:45px}.section-heading h2,h2{font-size:36px;line-height:1.42;letter-spacing:-1.4px;margin-bottom:0;font-weight:650}.section-heading>p{font-size:16px;color:var(--muted);margin:0 0 4px}.section-label{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--ink);padding:18px 0}.section-label h3{font-size:19px;margin:0;font-weight:600}.section-label span{font-size:13px;color:var(--muted)}.product-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.product{background:#f5f7fa}.product>img{width:100%;aspect-ratio:1140/500;object-fit:cover}.product-body{padding:28px 30px 25px}.product-type{font-size:11px;letter-spacing:1.2px;color:var(--pink);font-weight:750;margin-bottom:6px}.product h3,.feature-row h3{font-size:25px;line-height:1.35;letter-spacing:-.5px;margin-bottom:15px;font-weight:650}.product-body>p:not(.product-type){font-size:15px;color:var(--muted);margin-bottom:25px;min-height:77px}.product-links{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #d3dbe7;padding-top:17px;font-size:14px;font-weight:600;color:var(--navy)}.product-links a{padding-block:4px}.product-links a:first-child span[aria-hidden]{margin-left:10px}.product-links a:last-child{color:#a6005b}.feature-row{margin-top:40px;display:grid;grid-template-columns:1fr 1fr;align-items:center;border-block:1px solid var(--line);padding-block:30px;gap:40px}.feature-row img{width:100%}.feature-row>div{padding:12px 0}.feature-row .eyebrow{margin-bottom:10px}.feature-row p:not(.eyebrow){color:var(--muted);font-size:15px;margin-bottom:20px}.product-note{margin:24px 0 0;color:var(--muted);font-size:12px;line-height:1.8}
.software{background:var(--ice)}.software-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.software h2{margin-bottom:28px}.software h3{font-size:24px;margin-bottom:12px;font-weight:600}.software-copy>p:not(.eyebrow):not(.small-note){color:var(--muted);font-size:15px}.software-list{list-style:none;padding:0;margin:23px 0 28px;font-size:14px}.software-list li{border-bottom:1px solid #d9e0e9;padding:9px 0}.software-list li:before{content:"+";color:var(--pink);margin-right:14px;font-weight:700}.software figure{margin:0}.software figure img{width:100%;box-shadow:0 20px 45px rgba(32,61,121,.07)}.software figcaption{font-size:11px;color:var(--muted);margin-top:16px}.small-note{font-size:12px;color:var(--muted);margin:15px 0 0}
.contact{background:var(--navy);color:white;position:relative}.contact:before{content:"";position:absolute;top:0;left:0;width:80px;height:5px;background:var(--pink)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.contact h2{font-size:42px;margin-bottom:24px}.contact p:not(.eyebrow){color:#e1e8f4;font-size:16px}.contact-details>div{padding-bottom:21px;margin-bottom:21px;border-bottom:1px solid #566e9c}.contact-label{display:block;font-size:12px;color:#ccd9ef;margin-bottom:5px}.contact-phone{font-size:32px;letter-spacing:-.5px;display:flex;justify-content:space-between}.contact-email{font-size:20px;display:flex;justify-content:space-between;gap:12px;overflow-wrap:anywhere;word-break:normal}.contact address{font-size:14px;font-style:normal;color:#e1e8f4}.contact-source{font-size:12px;display:inline-block;margin-top:17px}.footer{display:flex;justify-content:space-between;gap:25px;padding-block:35px}.footer strong{font-size:14px;letter-spacing:1px;color:var(--navy)}.footer p{font-size:11px;color:var(--muted);margin:6px 0 0}.footer a{font-size:12px}.footer>div:last-child{text-align:right}
@media(min-width:1600px){.hero{grid-template-columns:46% 54%}.hero-copy{padding-right:70px}.hero-photo img{object-position:center}}
@media(max-width:1000px){.wrap{width:calc(100% - 48px)}.header-inner{height:80px}.brand img{width:185px}.brand span{display:none}nav{gap:22px}.hero{grid-template-columns:48% 52%;min-height:470px}.hero-copy{padding:48px 24px}.hero-intro{font-size:16px}.desktop-break{display:none}.hero-photo img{object-position:67% center}.section{padding-block:60px}.product-grid{gap:24px}.product-body{padding:22px}.product h3{font-size:23px}.product-body>p:not(.product-type){min-height:102px}.software-grid,.contact-grid{gap:35px}.section-heading h2,h2{font-size:31px}.contact-email{font-size:17px}}
@media(max-width:680px){html{scroll-padding-top:130px}.wrap{width:calc(100% - 36px)}.header-inner{height:auto;min-height:100px;flex-wrap:wrap;gap:10px;padding-block:17px 11px}.brand img{width:174px}.brand span{display:block;font-size:10px;padding-left:12px}.brand{gap:12px}nav{width:100%;gap:26px;font-size:13px}.nav-contact{margin-left:auto;border:0;padding:0;color:var(--pink)}.nav-contact span{margin-left:8px}.hero{display:flex;flex-direction:column}.hero-copy{padding:43px 24px 38px}h1{font-size:37px;letter-spacing:-1.6px}.hero .eyebrow{margin-bottom:18px}.hero-intro{font-size:16px}.hero-photo{height:auto;aspect-ratio:1.8}.hero-photo img{object-position:center}.hero-photo figcaption{font-size:10px;bottom:13px;right:15px}.intro-bar{padding-block:23px;align-items:flex-start}.intro-bar p{font-size:12px}.text-link{font-size:11px}.text-link span{margin-left:8px}.section{padding-block:48px}.section-heading{display:block;margin-bottom:30px}.section-heading h2,h2{font-size:29px;letter-spacing:-1px}.section-heading>p{font-size:14px;margin-top:20px}.eyebrow{font-size:10px;letter-spacing:1.7px;margin-bottom:14px}.product-grid{grid-template-columns:1fr;gap:24px}.product h3{font-size:23px}.product-body{padding:23px}.product-body>p:not(.product-type){min-height:0;font-size:14px;margin-bottom:20px}.product-links{font-size:13px}.feature-row{grid-template-columns:1fr;gap:18px;margin-top:27px;padding-block:25px}.feature-row>div{padding:0}.feature-row h3{font-size:24px}.feature-row p:not(.eyebrow){font-size:14px}.product-note{font-size:11px}.software-grid,.contact-grid{grid-template-columns:1fr;gap:36px}.software h2{margin-bottom:23px}.software h3{font-size:23px}.software-copy>p:not(.eyebrow):not(.small-note){font-size:14px}.software figure{grid-row:2}.contact h2{font-size:36px}.contact-phone{font-size:29px}.contact-email{font-size:18px}.contact-details{padding-top:5px}.footer{flex-direction:column;padding-block:28px;gap:20px}.footer>div:last-child{text-align:left}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Catalogue and Korean product details share the existing brand and cards. */
.header-inner nav{gap:20px;font-size:14px}.catalogue-total{color:var(--navy);font-size:14px;white-space:nowrap}.catalog-index{padding-top:65px}.category-links{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.category-links>a{position:relative;display:flex;flex-direction:column;gap:7px;background:var(--navy);color:white;padding:22px 18px}.category-links span{font-size:18px;font-weight:650}.category-links small{font-size:11px;color:#d5e1f5}.category-links b{position:absolute;right:15px;top:22px;color:#ffb9df}.catalogue-section+.catalogue-section{border-top:1px solid var(--line)}.catalogue-section .section-heading>p{max-width:430px}.catalogue-section .product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.product{display:flex;flex-direction:column;min-width:0}.product-image{display:block;background:#edf1f6;overflow:hidden}.product-image img{width:100%;aspect-ratio:16/10;object-fit:contain;background:#fff}.product-body{display:flex;flex-direction:column;flex:1;padding:24px}.product-body>p:not(.product-type){min-height:0;flex:1}.product h3{font-size:22px;overflow-wrap:anywhere}.product-links{font-size:13px;gap:12px}.back-catalog{display:inline-block;margin-top:32px;color:var(--navy);font-size:14px;font-weight:600}.breadcrumb{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--muted);padding-block:28px}.detail-hero{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding-block:30px 65px}.detail-hero h1{font-size:clamp(32px,3.4vw,47px);letter-spacing:-1.2px;overflow-wrap:anywhere}.detail-intro{font-size:19px;color:var(--muted);margin-bottom:30px}.detail-hero figure{margin:0;background:#f5f7fa;padding:20px}.detail-hero img{width:100%;height:350px;object-fit:contain;background:#fff}.detail-hero figcaption{font-size:11px;color:var(--muted);margin-top:12px}.detail-body{max-width:900px;padding-bottom:75px}.detail-body h2{font-size:29px;margin-bottom:30px}.feature-block{display:grid;grid-template-columns:52px 1fr;gap:24px;padding-block:27px;border-top:1px solid var(--line)}.feature-number{color:var(--pink);font-size:14px;letter-spacing:1px;padding-top:4px}.feature-block h3{font-size:22px;line-height:1.5;margin-bottom:10px}.feature-block p{color:var(--muted);font-size:16px;margin-bottom:0}.specifications{margin-top:55px}.specifications table{width:100%;border-collapse:collapse;font-size:15px}.specifications th,.specifications td{padding:17px 20px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.specifications th{width:30%;background:var(--ice);font-weight:600}.source-note{margin-top:45px;background:var(--ice);border-left:3px solid var(--pink);padding:22px 25px;font-size:13px;color:var(--muted)}.source-note p{margin-bottom:10px}.source-note a{color:var(--navy);font-weight:600}.related{margin-top:55px}.related>div{display:grid;grid-template-columns:1fr 1fr;gap:14px}.related>div a{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding:14px 0;font-size:15px}.related span{color:var(--pink)}
@media(max-width:1100px){.header-inner{flex-wrap:wrap;height:auto;padding-block:18px;gap:16px}.header-inner nav{width:100%;justify-content:space-between}.category-links{grid-template-columns:repeat(3,1fr)}.catalogue-section .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-hero{gap:32px}html{scroll-padding-top:150px}}
@media(max-width:680px){.header-inner nav{font-size:12px;gap:20px;overflow-x:auto;white-space:nowrap;justify-content:flex-start;padding:4px 0 6px}.header-inner nav>a{flex-shrink:0}.nav-contact{margin-left:0}.hero h1{font-size:34px}.catalogue-total{font-size:11px}.catalog-index{padding-top:42px}.category-links{grid-template-columns:1fr 1fr;gap:10px}.category-links>a{padding:18px 14px}.category-links span{font-size:16px}.category-links small{font-size:10px}.category-links b{right:12px;top:17px}.catalogue-section .product-grid{grid-template-columns:1fr}.catalogue-section .section-heading>p{max-width:none}.detail-hero{grid-template-columns:1fr;gap:30px;padding-block:15px 45px}.detail-hero h1{font-size:35px}.detail-intro{font-size:16px}.detail-hero img{height:250px}.breadcrumb{font-size:11px;gap:8px;padding-block:20px}.detail-body h2{font-size:27px}.feature-block{grid-template-columns:28px 1fr;gap:14px;padding-block:23px}.feature-block h3{font-size:20px}.feature-block p{font-size:14px}.specifications th,.specifications td{font-size:13px;padding:14px 12px}.specifications th{width:36%}.related>div{grid-template-columns:1fr}.source-note{font-size:12px;padding:18px}.detail-body{padding-bottom:48px}html{scroll-padding-top:140px}}

/* The two brands share page structure and keep their own visual identity. */
h1,h3,.product-body,.detail-hero>div,.contact-email{overflow-wrap:anywhere;min-width:0}
.header-inner nav{gap:28px}.brand{flex-shrink:0}.header-inner{min-height:92px}
.kavo{--navy:#323f48;--deep:#25313a;--pink:#436da9;--ink:#323f48;--ice:#f3f5f6}
.kavo .brand-stripe{background:linear-gradient(90deg,#436da9 0 74%,#eada24 74% 100%)}
.kavo-brand img{width:107px;background:#323f48;padding:6px 10px}
.kavo .eyebrow.light{color:#eada24}.kavo .pink{background:#eada24;color:#25313a}
.kavo .hero-photo{background:#f3f5f6}.kavo .hero-photo img{object-fit:contain}
.kavo .product-links a:last-child{color:#436da9}
.kavo .category-links{grid-template-columns:repeat(4,minmax(0,1fr))}
.hub-wordmark{font-size:23px;letter-spacing:.3px;line-height:1.2;font-weight:750;color:var(--navy)}
.hub-wordmark span{font-size:28px;color:#323f48;margin-left:9px}.hub-wordmark small{font-size:11px;letter-spacing:2px;margin-left:10px}
.hub-intro{padding-block:62px 36px}.hub-intro h1{font-size:clamp(35px,4vw,56px);letter-spacing:-1.7px;margin-bottom:20px}
.hub-intro h1 span{color:#436da9}.hub-intro>p:last-child{color:var(--muted);font-size:17px;line-height:1.8;margin-bottom:0}
.brand-portals{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.brand-portal{display:block;overflow:hidden;border:1px solid var(--line);transition:box-shadow .2s}
.brand-portal:hover{text-decoration:none;box-shadow:0 10px 30px #172f5c14}
.portal-heading{min-height:88px;display:flex;justify-content:space-between;align-items:center;padding:18px 30px}
.planmeca-portal{border-top:4px solid #d60075}.planmeca-portal .portal-heading img{width:210px}
.portal-heading>span{font-size:13px;letter-spacing:1px}.portal-image{height:235px;background:#f5f7fa;overflow:hidden}
.portal-image img{width:100%;height:100%;object-fit:cover}.planmeca-portal .portal-image img{object-position:center}
.kavo-portal{border-top:4px solid #eada24}.kavo-portal .portal-heading{background:#323f48;color:white;padding-block:10px}
.kavo-portal .portal-heading img{width:145px;height:68px;object-fit:contain}.kavo-portal .portal-image img{object-fit:contain}
.portal-copy{padding:27px 30px 30px}.portal-copy h2{font-size:29px;margin-bottom:15px}.portal-copy p{color:var(--muted);font-size:15px;margin-bottom:20px}
.portal-count{display:block;font-size:12px;color:var(--muted);margin-bottom:17px}.portal-copy strong{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:18px;color:var(--navy);font-size:16px}.kavo-portal .portal-copy strong{color:#436da9}
.hub-note{padding-block:28px 52px}.hub-note>p:first-child{font-size:14px;color:var(--muted);margin:0}.hub-note .product-note{margin-top:12px}
@media(max-width:1100px){.header-inner{flex-wrap:nowrap;gap:20px}.header-inner nav{width:auto;gap:22px}.kavo .category-links{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:680px){.header-inner{flex-wrap:wrap;min-height:100px}.header-inner nav{width:100%;gap:24px;justify-content:flex-start}.kavo .category-links{grid-template-columns:1fr 1fr}.hub-wordmark{font-size:20px}.hub-wordmark span{font-size:25px}.hub-wordmark small{font-size:10px}.hub-intro{padding-block:35px 28px}.hub-intro h1{font-size:34px;letter-spacing:-1.4px}.hub-intro>p:last-child{font-size:14px}.brand-portals{grid-template-columns:1fr;gap:25px}.portal-heading{padding:18px 22px}.portal-image{height:210px}.portal-copy{padding:23px}.portal-copy h2{font-size:27px}.hub-note{padding-block:24px 38px}.kavo-brand img{width:100px}.contact-email{font-size:17px}.specifications td{overflow-wrap:anywhere}.detail-hero h1{font-size:32px}}
@media(prefers-reduced-motion:reduce){.brand-portal{transition:none}}

.legacy-route{display:none;padding:20px 24px;background:var(--ice);border-left:3px solid var(--pink);margin-bottom:25px;font-size:14px}.legacy-route:target{display:flex;flex-wrap:wrap;gap:10px 30px;justify-content:space-between}.legacy-route a{color:var(--navy);font-weight:650}

/* Put support before the catalogue for visitors seeking service. */
.hub-intro{padding-top:42px}.support-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:46px}.support-card{display:flex;flex-direction:column;padding:25px;border:1px solid var(--line);min-width:0}.support-card:hover{text-decoration:none;box-shadow:0 6px 20px #172f5c14}.support-kicker{font-size:12px;color:var(--muted)}.support-card h2{display:flex;justify-content:space-between;gap:16px;font-size:25px;margin:10px 0 12px}.support-card h2 span{font-size:20px}.support-card p{font-size:14px;color:var(--muted);margin-bottom:20px;flex:1}.support-card strong{font-size:17px}.support-card small{display:block;font-size:11px;margin-top:5px;color:var(--muted)}.support-as{background:var(--navy);color:white;border-color:var(--navy)}.support-as .support-kicker,.support-as p,.support-as small{color:#e1e8f4}.support-product{background:#fdf2f8;border-top:3px solid var(--pink)}.support-location{background:var(--ice);border-top:3px solid #436da9}.brand-selection-heading{margin-bottom:24px}.brand-selection-heading h2{font-size:27px}.brand-selection-heading p{font-size:14px;color:var(--muted);margin:8px 0 0}.contact-talk{background:white;color:var(--navy);gap:20px}.contact .support-hint{font-size:12px;margin:14px 0 0}.support-card:focus-visible{outline-offset:4px}
@media(max-width:900px){.header-inner{flex-wrap:wrap}.header-inner nav{width:100%;justify-content:space-between}.support-shortcuts{gap:12px}.support-card{padding:20px 17px}.support-card h2{font-size:22px}}
@media(max-width:680px){.support-shortcuts{grid-template-columns:1fr;gap:14px;margin-bottom:34px}.support-card{padding:21px}.support-card p{margin-bottom:14px}.support-card h2{font-size:25px}.brand-selection-heading h2{font-size:24px}.hub-intro{padding-top:30px}.header-inner nav{gap:16px}.nav-contact span{margin-left:4px}.contact-talk{font-size:14px}}

.support-phone{display:block;margin-top:12px}.support-phone small{margin:0 0 4px}.support-phone strong{white-space:nowrap}
