@charset "UTF-8";
:root{--wine:#8b1e2d;--ink:#232a31;--paper:#f3f1ec;--muted:#686b6b;--line:#d9d7d0;--serif:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;--sans:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.9 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #b68a47;outline-offset:6px}p,h1,h2,h3{margin:0}h2,h3{font-weight:500}h2{font-family:var(--serif);font-size:clamp(28px,3.1vw,43px);line-height:1.65;letter-spacing:.07em}h3{font-size:21px;letter-spacing:.04em}::selection{background:var(--wine);color:white}.skip-link{position:fixed;top:-100px;left:16px;z-index:100;background:white;padding:10px}.skip-link:focus{top:8px}.site-header{min-height:100px;padding:20px 4.5%;display:flex;align-items:center;justify-content:space-between;gap:28px;background:var(--paper);position:relative;z-index:20;border-bottom:1px solid var(--line)}.brand{display:inline-flex;align-items:center;gap:13px;flex-shrink:0}.brand-symbol{font:bold 54px/.8 Georgia,serif;color:var(--wine);letter-spacing:-7px;padding-right:6px}.brand-symbol>span{font-size:40px}.brand-name{font:600 17px/1.3 Georgia,serif;letter-spacing:.15em}.brand-name>span{display:block;font:10px/1.6 var(--sans);letter-spacing:.15em;margin-top:5px}.site-nav ul{display:flex;list-style:none;align-items:center;gap:30px;padding:0;margin:0}.site-nav a{font-size:12px;font-weight:600;display:block;padding:8px 0;position:relative}.site-nav a[aria-current]{color:var(--wine)}.site-nav a:hover{color:var(--wine)}.site-nav li:last-child a{background:var(--wine);color:white;padding:12px 23px}.site-nav li:last-child a:hover{background:#6f1724}.site-nav li:last-child span{margin-left:20px}.menu-toggle{display:none}.hero{min-height:740px;position:relative;background:#20282b;color:white;overflow:hidden;display:flex;align-items:center}.hero-copy{position:relative;z-index:2;width:100%;padding:80px 8% 110px}.eyebrow{color:var(--wine);font:600 10px/1.5 var(--sans);letter-spacing:.2em;margin-bottom:24px}.eyebrow.light{color:#cbb8a3}.hero h1{font-family:var(--serif);font-weight:500;font-size:clamp(38px,4vw,62px);line-height:1.6;letter-spacing:.07em;text-shadow:0 2px 25px #172022}.hero-sub{font-family:var(--serif);font-size:22px;letter-spacing:.07em;margin-top:24px}.hero-description{font-size:12px;line-height:2.2;color:#c5c8c6;margin:22px 0 30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;min-height:54px;padding:14px 26px;font-size:12px;transition:background .2s,color .2s}.button span{font-size:19px}.button-light{background:var(--paper);color:var(--ink)}.button-light:hover{background:white}.hero-art{position:absolute;inset:0 0 0 40%;background:radial-gradient(ellipse at 70% 25%,#67706455,transparent 65%),linear-gradient(115deg,#20282b 3%,#343c39 55%,#181f22);overflow:hidden}.hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#20282b,transparent 45%),linear-gradient(0deg,#141b1ecc,transparent 40%);pointer-events:none}.cellar-lines{position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0,transparent 100px,#b5a98d15 101px,#0005 105px,transparent 108px);transform:perspective(650px) rotateY(-18deg) scale(1.2);opacity:.55}.bottle{position:absolute;width:175px;height:450px;border-radius:52px 52px 18px 18px;background:linear-gradient(90deg,#0d1615,#253d2c 14%,#78866b66 20%,#1d3225 27%,#10231b 55%,#061310 82%,#293d2c);box-shadow:18px 30px 50px #0008,inset -8px 0 12px #0009;bottom:80px;right:20%;transform:rotate(13deg)}.bottle:before{content:"";position:absolute;bottom:calc(100% - 12px);left:59px;width:57px;height:150px;background:linear-gradient(90deg,#3b0d18,#8b1e2d 35%,#511421 76%,#240c13);border-radius:8px 8px 14px 14px;box-shadow:inset 0 22px #711d2b,inset 0 25px #b9685e44}.bottle:after{content:"";position:absolute;left:12%;top:16%;width:6%;height:66%;background:linear-gradient(#ffffff24,#ffffff05);border-radius:80%;filter:blur(3px)}.bottle-back{right:50%;transform:rotate(-12deg) scale(.8);bottom:130px;opacity:.6}.bottle-label{position:absolute;top:165px;left:0;right:0;min-height:175px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(90deg,#c4b99a,#f0e7d3 25%,#d6c9aa 70%,#8e886d);color:#3b322a;text-align:center}.bottle-label span{font:27px Georgia,serif;letter-spacing:.12em}.bottle-label i{font:italic 11px Georgia,serif;margin:12px 0 22px}.bottle-label b{font:9px Georgia,serif;letter-spacing:.3em}.visual-caption{position:absolute;right:8%;bottom:45px;z-index:2;font-size:9px;letter-spacing:.25em;color:#c4c1b2}.hero-side{position:absolute;right:22px;top:90px;writing-mode:vertical-rl;font-size:9px;letter-spacing:.22em;color:#aeb6af}.hero-scroll{position:absolute;bottom:28px;left:8%;font-size:9px;letter-spacing:.2em;z-index:3;display:flex;gap:28px;align-items:center}.hero-scroll span{font-size:22px}.section{padding:110px 8%}.strengths{display:grid;grid-template-columns:1fr 1.5fr;gap:9%}.section-intro{font-size:14px;margin:4px 0 40px;line-height:2.1}.value-row{border-top:1px solid var(--line);padding:27px 0;display:flex;gap:22px;position:relative}.value-row:last-child{border-bottom:1px solid var(--line)}.number{font:italic 16px Georgia,serif;color:var(--wine);padding-top:7px}.value-row h3{font-family:var(--serif);font-size:23px;margin-bottom:10px}.value-row p{font-size:12px;color:var(--muted);max-width:430px}.value-en{position:absolute;right:0;top:12px;font-size:8px;letter-spacing:.13em;color:#999}.services{background:#eae7e0}.heading-line{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:50px}.text-link{display:inline-flex;gap:40px;align-items:center;border-bottom:1px solid var(--ink);padding-bottom:10px;font-size:12px}.text-link:hover{color:var(--wine);border-color:var(--wine)}.text-link span{font-size:21px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.service-visual{height:240px;position:relative;overflow:hidden;transition:filter .3s}.service-card:hover .service-visual{filter:brightness(1.12)}.service-visual i{position:absolute;bottom:17px;left:20px;font:9px var(--sans);letter-spacing:.25em;color:#eeece1;z-index:2}.storage-art{background:linear-gradient(145deg,#252d2d,#6a6b5e)}.storage-art:before{content:"";position:absolute;inset:25px 15%;background:repeating-linear-gradient(0deg,#c0b29511 0 42px,#b3b1a2 43px 46px,#101b1a 47px 51px);transform:skewY(-8deg);border-left:7px solid #979a8b;border-right:7px solid #979a8b}.storage-art span{position:absolute;top:48px;bottom:35px;width:16%;background:repeating-linear-gradient(0deg,#907a57 0 29px,#4a4839 30px 44px);transform:skewY(-8deg);left:24%;opacity:.8}.storage-art span:nth-child(2){left:44%}.storage-art span:nth-child(3){left:64%}.logistics-art{background:linear-gradient(145deg,#68564b,#af9c7b)}.logistics-art span{position:absolute;width:90px;height:90px;background:linear-gradient(90deg,#a58c68 50%,#c1a77d 50%);box-shadow:10px 12px 25px #30261933;transform:skewY(-8deg);bottom:40px;left:20%}.logistics-art span:before{content:"";position:absolute;width:22%;height:100%;background:#d7c49d55;left:40%}.logistics-art span:nth-child(2){left:48%;bottom:55px}.logistics-art span:nth-child(3){left:34%;bottom:129px;width:75px;height:65px}.system-art{background:linear-gradient(130deg,#22383c,#6a8580)}.mini-window{position:absolute;inset:37px 15% 35px;background:#f3f1ec;border:5px solid #323c3b;border-radius:5px;transform:perspective(450px) rotateY(-15deg) rotateZ(-4deg);padding:20px 14px}.mini-window span{display:block;height:11px;width:45%;background:var(--wine);margin-bottom:20px}.mini-window b{display:block;height:13px;border-bottom:2px solid #c4cbc4;margin-top:9px}.service-body{padding:27px 0 0}.service-body .eyebrow{font-size:8px;margin-bottom:12px}.service-body h3{display:flex;justify-content:space-between;font-family:var(--serif);padding-bottom:14px;border-bottom:1px solid #cbc7be;margin-bottom:14px}.service-body>p:last-child{font-size:12px;color:var(--muted)}.heading-line>p{font-size:13px;color:var(--muted)}.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.location{border-bottom:1px solid var(--line)}.location-art{height:200px;background:#d9dbd4;position:relative;overflow:hidden;display:flex;align-items:center;padding:30px}.location-art>span{font:54px Georgia,serif;letter-spacing:.12em;color:#f3f1ec;position:relative;z-index:2}.location-art i{position:absolute;right:-10%;bottom:-20px;width:75%;height:170px;background:repeating-linear-gradient(90deg,#52615d 0 30px,#7c8981 31px 33px);transform:skewY(-10deg);border-top:15px solid #a2aca0;box-shadow:0 -15px 0 #929b8e}.keiyo-art{background:#d4d0c6}.keiyo-art i{background:repeating-linear-gradient(90deg,#5f6464 0 40px,#929692 41px 43px);transform:skewY(8deg);border-top-color:#99998b}.location-info{padding:25px 0 30px}.location-info .eyebrow{font-size:9px;margin-bottom:9px}.location-info h3{font-family:var(--serif);font-size:23px}.location-info>p:not(.eyebrow){font-size:12px;color:var(--muted);margin:7px 0 18px}.location-info .text-link{font-size:11px;border:0;padding:0}.stockmart{background:var(--ink);color:var(--paper);display:grid;grid-template-columns:1fr 1.2fr;gap:8%;align-items:center;overflow:hidden}.stockmart h2{font-size:clamp(32px,3.4vw,47px)}.stockmart-name{font:33px Georgia,serif;margin:30px 0 20px;letter-spacing:.03em}.stockmart-name span{display:block;font:10px var(--sans);letter-spacing:.08em;margin-top:12px}.stockmart-copy>p:not(.eyebrow):not(.stockmart-name){font-size:12px;line-height:2.2;color:#c2c5c5}.button-outline{border:1px solid #8c9293;margin-top:30px}.button-outline:hover{background:var(--paper);color:var(--ink)}.dashboard-preview{background:#f8f7f3;color:var(--ink);box-shadow:30px 30px 0 #ffffff05;transform:perspective(1400px) rotateY(-6deg);border:1px solid #ffffff44;border-radius:4px;overflow:hidden}.dashboard-bar{padding:20px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ddd}.dashboard-bar strong{font:20px Georgia,serif}.dashboard-bar strong span{display:block;font:6px var(--sans);letter-spacing:.14em;margin-top:5px}.demo-label{font:8px var(--sans);letter-spacing:.12em;color:var(--wine);border:1px solid #d9bec1;padding:3px 7px}.dashboard-layout{display:flex;min-height:270px}.dashboard-sidebar{width:27%;background:#eeeae3;padding:22px 0;font-size:8px;flex-shrink:0}.dashboard-sidebar span{display:block;padding:10px 14px}.dashboard-sidebar .selected{background:var(--wine);color:white}.dashboard-main{padding:25px 20px;flex:1}.dashboard-title{font-family:var(--serif);font-size:18px;margin-bottom:22px}.dashboard-tiles{display:flex;gap:10px}.dashboard-tiles>div{border:1px solid #ddd;padding:12px;flex:1}.dashboard-tiles span{font:7px var(--sans);letter-spacing:.1em;color:var(--wine);display:block}.dashboard-tiles strong{font-size:10px;font-weight:500;display:block;margin:8px 0}.dashboard-tiles i{display:block;height:4px;background:#d6c9ba;width:65%}.dashboard-table{margin-top:20px;font-size:8px}.dashboard-table i{display:block;height:15px;border-bottom:1px solid #dedbd3}.concept-note{font-size:8px;color:#737773;border-top:1px solid #ddd;padding:10px 14px}.news{display:grid;grid-template-columns:1fr 2fr;gap:8%;align-items:start}.news-placeholder{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 0;display:flex;gap:30px;align-items:baseline}.news-label{font-size:10px;border:1px solid var(--line);padding:3px 15px;white-space:nowrap}.news-placeholder p{font-size:14px}.news-placeholder p span{display:block;font-size:11px;color:var(--muted);margin-top:6px}.contact-section{padding:80px 8%;background:var(--wine);color:var(--paper);display:flex;justify-content:space-between;gap:50px;align-items:center;background-image:radial-gradient(ellipse at 95% 100%,#c0705a44,transparent 65%)}.contact-section .eyebrow{color:#e1bab9}.contact-section h2{font-size:clamp(32px,3.3vw,46px)}.contact-section p:not(.eyebrow){font-size:12px;color:#e3c8cb;margin-top:22px}.contact-link{min-width:260px;display:flex;justify-content:space-between;align-items:center;gap:50px;border-top:1px solid #ba7f87;border-bottom:1px solid #ba7f87;padding:30px 0;font-family:var(--serif);font-size:23px}.contact-link:hover{color:#e9c5a0}.contact-link span{font:35px var(--sans)}.site-footer{padding:50px 8% 25px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:40px}.footer-top>p{font-family:var(--serif);font-size:16px;letter-spacing:.06em}.footer-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}.footer-bottom a span{margin-left:20px}.mobile-only{display:none}main:not(.home){min-height:55vh;max-width:1200px;margin:auto;padding:80px 8%}main:not(.home) h1{font-family:var(--serif);font-weight:500;font-size:36px;margin-bottom:20px}
@media(min-width:1600px){.hero-copy,.section,.contact-section,.site-footer{padding-left:max(8%,calc((100vw - 1344px)/2));padding-right:max(8%,calc((100vw - 1344px)/2))}.hero{min-height:820px}}
@media(max-width:1100px){.site-header{padding:20px 4%}.site-nav ul{gap:20px}.brand-name{font-size:15px}.hero-copy{padding-left:6%}.hero h1{font-size:46px}.section{padding:85px 6%}.strengths{gap:6%;grid-template-columns:1fr 1.4fr}.service-grid{gap:20px}.service-visual{height:200px}.stockmart{gap:5%}.dashboard-main{padding:22px 12px}.dashboard-sidebar span{padding:10px 8px}.location-art{height:180px}.contact-section{padding:70px 6%}}
@media(max-width:960px){.site-header{min-height:85px;flex-wrap:wrap;gap:16px}.site-nav{width:100%}.site-nav ul{justify-content:center;flex-wrap:wrap}.has-menu-js .site-nav{display:none}.has-menu-js .site-nav.is-open{display:block}.has-menu-js .menu-toggle{display:flex;align-items:center;gap:18px;border:1px solid var(--line);padding:7px 14px;background:transparent;font-size:11px;cursor:pointer}.menu-toggle[hidden]{display:none}.menu-toggle span{font-size:20px}.menu-toggle[aria-expanded=true] span{transform:rotate(45deg)}.has-menu-js .site-nav ul{display:block;padding:10px 0}.has-menu-js .site-nav li{border-top:1px solid var(--line)}.has-menu-js .site-nav a{padding:15px 10px}.has-menu-js .site-nav li:last-child a{margin-top:10px;padding:15px}.hero{min-height:690px}.hero h1{font-size:44px}.hero-art{left:35%}.bottle{right:13%;opacity:.85}.bottle-back{right:48%}.hero-sub{font-size:19px}.strengths{grid-template-columns:1fr;gap:35px}.section-heading h2 br{display:none}.strengths-content{max-width:none}.value-row p{max-width:none;padding-right:20px}.service-body h3{font-size:19px}.service-visual{height:180px}.logistics-art span{width:65px;height:70px}.logistics-art span:nth-child(3){bottom:110px;width:60px;height:50px}.stockmart{grid-template-columns:1fr;gap:45px}.dashboard-preview{width:100%;max-width:650px;margin:auto;transform:none}.dashboard-layout{min-height:300px}.dashboard-sidebar{font-size:10px}.dashboard-main{padding:30px}.dashboard-tiles strong{font-size:14px}.news{grid-template-columns:1fr 1.8fr;gap:30px}.contact-link{min-width:210px}.contact-section{gap:30px}.contact-section h2{font-size:34px}}
@media(max-width:640px){body{font-size:14px}.site-header{padding:18px 6%;min-height:80px}.brand-symbol{font-size:45px}.brand-name{font-size:14px}.brand-name>span{font-size:9px}.hero{min-height:790px;align-items:flex-start}.hero-copy{padding:66px 7% 140px}.hero h1{font-size:clamp(29px,7.6vw,43px);line-height:1.7;letter-spacing:.04em}.hero .eyebrow{font-size:8px;margin-bottom:24px}.hero-sub{font-size:17px;letter-spacing:.03em;margin-top:22px}.hero-description{font-size:11px;line-height:2.2;margin-top:22px}.hero-art{left:0;opacity:.65}.hero-art:after{background:linear-gradient(90deg,#20282bf0, #20282b66),linear-gradient(0deg,#141b1ecc,transparent 65%)}.bottle{width:140px;height:360px;right:5%;bottom:45px;transform:rotate(16deg);opacity:.65}.bottle:before{left:47px;width:46px;height:120px}.bottle-label{top:130px;min-height:145px}.bottle-back{right:38%;bottom:60px;transform:rotate(-12deg) scale(.8);opacity:.4}.hero-side{display:none}.hero-scroll{left:7%;bottom:28px;font-size:8px}.visual-caption{display:none}.button{font-size:11px;gap:30px;padding:13px 20px;min-height:52px}.section{padding:65px 7%}.eyebrow{font-size:9px;margin-bottom:17px}h2{font-size:29px;letter-spacing:.03em}.strengths{gap:25px}.section-heading h2 br{display:initial}.section-intro{font-size:12px;margin-bottom:30px}.section-intro br{display:none}.value-row{gap:16px;padding:27px 0}.value-row h3{font-size:20px}.value-row p{font-size:12px;padding:0}.value-en{font-size:7px;top:8px}.heading-line{display:block;margin-bottom:30px}.heading-line>.text-link{margin-top:22px}.service-grid{grid-template-columns:1fr;gap:35px}.service-visual{height:240px}.service-body{padding-top:22px}.service-body h3{font-size:22px}.service-body>p:last-child{font-size:12px}.service-body .eyebrow{font-size:9px}.logistics-art span{width:100px;height:95px}.logistics-art span:nth-child(3){bottom:135px;width:80px;height:65px}.mobile-only{display:initial}.heading-line>p{margin-top:22px;font-size:12px}.location-grid{grid-template-columns:1fr;gap:30px}.location-art{height:180px}.location-info h3{font-size:22px}.stockmart{padding-left:7%;padding-right:7%}.stockmart h2{font-size:33px}.stockmart-name{font-size:31px}.stockmart-copy>p:not(.eyebrow):not(.stockmart-name) br{display:none}.dashboard-bar{padding:15px}.dashboard-bar strong{font-size:18px}.dashboard-sidebar{font-size:7px}.dashboard-sidebar span{padding:10px 6px}.dashboard-main{padding:22px 12px}.dashboard-title{font-size:15px}.dashboard-tiles{gap:7px}.dashboard-tiles>div{padding:10px 7px}.dashboard-tiles strong{font-size:10px}.dashboard-layout{min-height:250px}.concept-note{font-size:8px}.news{grid-template-columns:1fr;gap:25px}.news-placeholder{padding:24px 0;gap:18px}.news-label{padding:3px 10px}.news-placeholder p{font-size:12px}.news-placeholder p span{font-size:10px}.contact-section{padding:60px 7%;display:block}.contact-section .eyebrow{font-size:8px;letter-spacing:.13em}.contact-section h2{font-size:31px}.contact-section p:not(.eyebrow){font-size:11px}.contact-link{margin-top:35px;padding:23px 0;width:100%;font-size:22px}.footer-top{display:block;padding-bottom:28px}.footer-top>p{margin-top:24px;font-size:13px}.site-footer{padding:40px 7% 25px}.footer-bottom{font-size:9px;gap:20px}.footer-bottom a span{margin-left:8px}main:not(.home){padding:60px 7%}main:not(.home) h1{font-size:29px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Shared site logo: retain the existing header and footer layout. */
.site-header .brand-logo,.site-footer .brand-logo{display:block;width:240px;max-width:100%;height:auto}
.site-header .brand-logo{width:300px}
@media(min-width:961px){.site-header{padding-top:12px;padding-bottom:12px}}
@media(max-width:640px){.site-header .brand-logo{width:clamp(145px,48vw,220px)}.site-footer .brand-logo{width:220px}}

/* Wine storage photo: keep the HTML copy above a full-bleed, darkened image. */
.hero-photo .hero-art {
  inset: 0;
  opacity: 1;
  background: #232a31 url("../images/kojinwine_mainvisual_bk.png") center center / cover no-repeat;
}
.hero-photo .hero-art::after {
  background: linear-gradient(90deg, rgba(15, 21, 25, .9) 0%, rgba(15, 21, 25, .76) 38%, rgba(15, 21, 25, .3) 75%),
              linear-gradient(0deg, rgba(15, 21, 25, .5), rgba(15, 21, 25, .1) 65%);
}
.hero-photo .hero-description { color: #e0e1dd; }
@media (max-width: 960px) {
  .hero-photo .hero-art { background-position: 60% center; }
}
@media (max-width: 640px) {
  .hero-photo .hero-art { background-position: 64% center; }
  .hero-photo .hero-art::after {
    background: linear-gradient(90deg, rgba(15, 21, 25, .86), rgba(15, 21, 25, .58)),
                linear-gradient(0deg, rgba(15, 21, 25, .55), transparent 60%);
  }
}

/* Actual warehouse and work photos; preserve proportions when filling each frame. */
.service-visual.service-photo {
  height: auto;
  aspect-ratio: 8 / 5;
  background: #232a31;
}
.service-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

/* Company page: shared palette and navigation, independent editorial layout. */
main.company-page{max-width:none;padding:0;margin:0}
.company-hero{background:var(--ink);color:var(--paper);padding:28px 8% 0;position:relative;overflow:hidden}
.company-breadcrumb{display:flex;gap:16px;font-size:10px;color:#b6bbb9}
.company-breadcrumb a:hover{color:white}
.company-hero-content{display:flex;justify-content:space-between;align-items:center;gap:40px;padding:65px 0 75px}
main.company-page .company-hero h1{font-family:var(--serif);font-weight:500;font-size:clamp(38px,4.2vw,60px);margin:0 0 25px;letter-spacing:.1em}
.company-hero-lead{font-family:var(--serif);font-size:21px;letter-spacing:.08em;line-height:1.9}
.company-hero-word{font:italic clamp(40px,5.2vw,76px)/1.25 Georgia,serif;color:#bab5a2;letter-spacing:-.02em;border-left:1px solid #ffffff26;padding-left:55px}
.company-local-nav{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #ffffff26}
.company-local-nav a{padding:22px 20px 22px 0;font-size:12px;display:flex;justify-content:space-between;gap:16px;margin-right:25px;color:#deddd6}
.company-local-nav a:hover{color:#cbb8a3}
.company-local-nav span{color:#cbb8a3}
.company-introduction{display:grid;grid-template-columns:1.1fr 1fr;gap:9%;align-items:start}
.company-introduction h2{font-size:clamp(27px,2.7vw,39px)}
.company-introduction-text>p{font-size:14px;line-height:2.3;margin-bottom:22px}
.company-introduction-text .text-link{margin-top:12px}
.company-profile{background:#eae7e0;display:grid;grid-template-columns:1fr 2fr;gap:8%}
.profile-list{margin:0;border-top:1px solid #ccc8bf;min-width:0}
.profile-list>div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:24px;border-bottom:1px solid #ccc8bf;padding:23px 0}
.profile-list dt{font-size:12px;font-weight:600}
.profile-list dd{margin:0;font-size:13px;overflow-wrap:anywhere}
.profile-list ul{list-style:none;margin:0;padding:0}
.profile-list li+li{margin-top:17px}
.profile-list li span{display:block;color:var(--muted);font-size:11px;margin-top:5px}
.company-history{display:grid;grid-template-columns:1fr 2fr;gap:8%}
.company-section-note{font-family:var(--serif);font-size:17px;color:var(--muted);margin-top:25px;line-height:2}
.history-list{margin:0;padding:0;list-style:none;position:relative}
.history-list:before{content:"";position:absolute;left:4px;top:32px;bottom:32px;width:1px;background:var(--line)}
.history-list li{display:grid;grid-template-columns:110px 1fr;gap:25px;position:relative;padding:23px 0 23px 35px;border-bottom:1px solid var(--line)}
.history-list li:before{content:"";width:9px;height:9px;background:var(--wine);border-radius:50%;position:absolute;left:0;top:31px;box-shadow:0 0 0 6px var(--paper)}
.history-year{font:22px/1.5 Georgia,serif;color:var(--wine)}
.history-list p{font-size:13px;padding-top:4px}
.company-centers{background:#eae7e0}
.company-center-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.company-center{background:var(--paper);min-width:0}
.company-center-placeholder{height:225px}
.company-center-content{padding:32px}
.company-center-content .eyebrow{font-size:9px;margin-bottom:12px}
.company-center-content h3{font-family:var(--serif);font-size:24px;margin-bottom:22px}
.company-center-content address{font-style:normal;font-size:13px;line-height:2.1}
.center-phone{font-size:12px;margin-top:15px}
.center-phone a{text-decoration:underline;text-underline-offset:4px}
.center-access{border-top:1px solid var(--line);margin-top:25px;padding-top:22px}
.center-access h4{font-size:12px;margin:0 0 12px;font-weight:600}
.center-access p{font-size:12px;line-height:2;color:var(--muted)}
.center-access p+p{margin-top:12px}
.company-visit-note{font-size:13px;text-align:center;margin-top:35px}
@media(max-width:960px){
 .company-hero{padding-left:6%;padding-right:6%}
 .company-hero-word{padding-left:30px;font-size:52px}
 .company-introduction{grid-template-columns:1fr;gap:30px}
 .company-profile,.company-history{grid-template-columns:1fr;gap:35px}
 .company-section-note br{display:none}
 .company-center-content{padding:25px}
 .company-center-content h3{font-size:21px}
 .company-center-placeholder{height:180px}
}
@media(max-width:640px){
 .company-hero{padding:22px 7% 0}
 .company-breadcrumb{font-size:9px}
 .company-hero-content{padding:45px 0}
 main.company-page .company-hero h1{font-size:38px;margin-bottom:20px}
 .company-hero-lead{font-size:18px}
 .company-hero-word{display:none}
 .company-local-nav{grid-template-columns:1fr 1fr}
 .company-local-nav a{padding:17px 0;font-size:11px;margin-right:20px}
 .company-local-nav a:nth-child(n+3){border-top:1px solid #ffffff26}
 .company-introduction h2{font-size:27px}
 .company-introduction-text>p{font-size:13px}
 .profile-list>div{grid-template-columns:1fr;gap:9px;padding:20px 0}
 .profile-list dt{font-size:11px;color:var(--wine)}
 .profile-list dd{font-size:13px}
 .company-section-note{font-size:15px;margin-top:15px}
 .history-list li{grid-template-columns:78px 1fr;gap:14px;padding-left:25px}
 .history-year{font-size:19px}
 .history-list p{font-size:12px;padding-top:2px}
 .company-center-grid{grid-template-columns:1fr;gap:25px}
 .company-center-content{padding:25px}
 .company-center-content h3{font-size:22px}
 .company-center-placeholder{height:180px}
 .company-visit-note{font-size:12px;text-align:left;line-height:2}
}

/* Services page */
main.services-page{max-width:none;margin:0;padding:0}
.services-hero{position:relative;background:linear-gradient(90deg,#171f24ed,#171f2460),url('../images/kojinwine_mainvisual_bk.png') center/cover;color:var(--paper);padding:28px 8% 65px}
.services-hero-content{padding:65px 0 35px;position:relative}
main.services-page .services-hero h1{font:500 clamp(36px,4.2vw,60px)/1.65 var(--serif);letter-spacing:.07em;margin:0 0 25px}
.services-hero-content>p:last-child{font-size:13px;line-height:2.2;color:#dedfd9}
.services-hero-caption{font-size:9px;letter-spacing:.2em;color:#cbb8a3}
.services-local-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 30px;padding:23px 6%;border-bottom:1px solid var(--line);font-size:11px}
.services-local-nav a:hover{color:var(--wine);text-decoration:underline;text-underline-offset:5px}
.services-overview{display:grid;grid-template-columns:1fr 1fr;gap:40px 8%}
.services-overview>div>p:not(.eyebrow){font-size:14px;line-height:2.2;margin-bottom:20px}
.services-overview .text-link{margin-top:10px}
.logistics-chain{grid-column:1/-1;margin:10px 0 0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.logistics-chain li{padding:24px 18px;font-size:12px;border-right:1px solid var(--line);position:relative}
.logistics-chain li:last-child{border:0}.logistics-chain span{display:block;font:italic 17px Georgia,serif;color:var(--wine);margin-bottom:12px}
.service-detail{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;background:#eae7e0}
.detail-photo{margin:0;min-width:0}.detail-photo img{display:block;width:100%;height:auto}
.detail-photo figcaption{font-size:10px;color:var(--muted);margin-top:10px;letter-spacing:.05em}
.detail-copy>p:not(.eyebrow){margin-top:24px;font-size:13px;line-height:2.2}
.service-note{margin-top:25px;padding:20px;border-left:2px solid var(--wine);background:var(--paper)}
.service-note h3{font-size:14px;margin-bottom:8px}.service-note p{font-size:12px;color:var(--muted);line-height:2}
.service-points{list-style:none;padding:0;margin:24px 0 0;font-size:12px}
.service-points li{border-bottom:1px solid #d4cfc5;padding:10px 0}.service-points li:before{content:'＋';color:var(--wine);margin-right:12px}
.receiving-description{display:grid;grid-template-columns:1fr 3fr;gap:30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px 0;margin-bottom:40px}
.receiving-description h3{font-family:var(--serif);font-size:22px}.receiving-description p{font-size:13px;color:var(--muted);line-height:2}
.operation-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.operation-grid .detail-photo{aspect-ratio:8/5;overflow:hidden}.operation-grid .detail-photo img{height:100%;object-fit:cover}
.operation-body{padding-top:27px}.operation-body .eyebrow{font-size:9px;margin-bottom:12px}.operation-body h3{font:500 24px/1.7 var(--serif);margin-bottom:13px}.operation-body>p:last-child{font-size:13px;color:var(--muted);line-height:2.1}
.shipping-section{background:#eae7e0;display:grid;grid-template-columns:1fr 1fr;gap:8%}
.shipping-intro{font-size:13px;line-height:2.2;margin-top:25px;max-width:430px}
.shipping-steps article{display:flex;gap:24px;padding:26px 0;border-top:1px solid #d4cfc5}.shipping-steps article:last-child{border-bottom:1px solid #d4cfc5}
.shipping-steps article>span{font:italic 17px Georgia,serif;color:var(--wine);padding-top:6px}.shipping-steps h3{font:500 23px/1.6 var(--serif);margin-bottom:12px}.shipping-steps p{font-size:12px;color:var(--muted);line-height:2}
.delivery-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%}.delivery-grid article{border-top:2px solid var(--wine);padding-top:25px}.delivery-grid h3{font:500 25px/1.7 var(--serif);margin-bottom:24px}.delivery-grid p:not(.eyebrow){font-size:13px;margin-top:18px;line-height:2.1}.delivery-grid .eyebrow{font-size:9px;margin-bottom:12px}.delivery-grid p.service-small-note{font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding-top:18px}
.services-system{display:grid;grid-template-columns:1fr 1fr;gap:8%;background:var(--ink);color:var(--paper);align-items:center}
.services-system>div>p:not(.eyebrow){font-size:13px;color:#c2c5c5;line-height:2.2;margin-top:25px}
.system-capabilities{list-style:none;padding:0;margin:0}.system-capabilities li{padding:24px 0;border-top:1px solid #ffffff26}.system-capabilities li:last-child{border-bottom:1px solid #ffffff26}.system-capabilities li>span{font-size:8px;color:#cbb8a3;letter-spacing:.18em}.system-capabilities h3{font:500 23px/1.7 var(--serif);margin:9px 0}.system-capabilities p{font-size:12px;color:#c2c5c5}
.onboarding-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.onboarding-list li{border-top:1px solid var(--line);padding-top:22px}.onboarding-number{font:italic 30px Georgia,serif;color:var(--wine)}.onboarding-list h3{font:500 20px/1.7 var(--serif);margin:20px 0 14px}.onboarding-list p{font-size:12px;color:var(--muted);line-height:2}
.consultation-note{margin-top:40px;background:#eae7e0;padding:25px 30px}.consultation-note h3{font-size:14px;margin-bottom:10px}.consultation-note p{font-size:12px;color:var(--muted)}
@media(max-width:960px){
.services-hero{padding-left:6%;padding-right:6%}.services-overview,.service-detail,.shipping-section,.services-system{grid-template-columns:1fr;gap:35px}.service-detail .detail-photo{max-width:640px}.logistics-chain{margin-top:0}.logistics-chain li{padding:20px 12px;font-size:11px}.onboarding-list{grid-template-columns:1fr 1fr;gap:30px}.delivery-grid{gap:35px}.delivery-grid h3{font-size:22px}
}
@media(max-width:640px){
.services-hero{padding:22px 7% 40px;background-position:62% center}.services-hero-content{padding:45px 0 30px}main.services-page .services-hero h1{font-size:34px}.services-hero-content>p:last-child{font-size:12px}.services-hero-caption{font-size:7px;letter-spacing:.13em}.services-local-nav{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:12px 7%;font-size:10px}.services-local-nav a{padding:12px 0}.services-overview>div>p:not(.eyebrow){font-size:13px}.logistics-chain{grid-template-columns:1fr}.logistics-chain li{border-right:0;border-bottom:1px solid var(--line);display:flex;gap:20px;align-items:center;padding:16px 0;font-size:12px}.logistics-chain span{margin:0;font-size:16px}.detail-copy>p:not(.eyebrow){font-size:13px}.receiving-description{grid-template-columns:1fr;gap:14px;padding:22px 0;margin-bottom:30px}.operation-grid{grid-template-columns:1fr;gap:35px}.operation-body{padding-top:22px}.operation-body h3{font-size:23px}.delivery-grid{grid-template-columns:1fr;gap:35px}.delivery-grid h3{font-size:23px}.onboarding-list{grid-template-columns:1fr;gap:25px}.onboarding-list li{display:grid;grid-template-columns:42px 1fr;gap:10px 15px;padding-top:20px}.onboarding-number{grid-row:1/3;font-size:25px}.onboarding-list h3{margin:0;font-size:20px}.onboarding-list p{grid-column:2}.consultation-note{padding:22px;margin-top:30px}.consultation-note h3{font-size:13px}.services-system h2,.shipping-section h2{font-size:29px}
}

/* StockMart: a conceptual view with no customer or operational data. */
main.stockmart-page{max-width:none;margin:0;padding:0}
.sm-hero{background:var(--ink);color:var(--paper);padding:28px 8% 85px;background-image:radial-gradient(ellipse at 95% 60%,#59615e55,transparent 60%)}
.sm-hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:7%;align-items:center;padding-top:65px}
.sm-wordmark{font:44px/1.2 Georgia,serif;letter-spacing:.02em;margin-bottom:24px}
main.stockmart-page .sm-hero h1{font:500 clamp(32px,3.3vw,48px)/1.7 var(--serif);letter-spacing:.05em;margin:0 0 25px}
.sm-hero-copy>p:not(.eyebrow):not(.sm-wordmark){font-size:12px;color:#c9ceca;line-height:2.2;margin-bottom:30px}
.sm-concept{margin:0;background:var(--paper);color:var(--ink);border:1px solid #c8c4b4;box-shadow:18px 22px 0 #ffffff06;min-width:0}
.sm-concept-bar{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:22px;border-bottom:1px solid var(--line)}
.sm-concept-bar strong{font:24px Georgia,serif}.sm-concept-bar>span{font-size:8px;letter-spacing:.18em;color:var(--wine);border:1px solid #d0b4b8;padding:3px 8px}
.sm-concept-content{padding:30px}.sm-concept-label{font-size:11px;color:var(--muted);text-align:center}
.sm-concept-nodes{display:flex;justify-content:center;align-items:center;gap:22px;margin:25px 0}
.sm-concept-nodes>span{width:95px;height:95px;display:grid;place-items:center;border:1px solid #bdc0b7;border-radius:50%;font:22px var(--serif)}
.sm-concept-nodes>span:last-child{background:var(--wine);border-color:var(--wine);color:white}.sm-concept-nodes i{font-style:normal;font-size:27px;color:var(--wine)}
.sm-concept-modules{display:grid;grid-template-columns:1fr 1fr;gap:10px}.sm-concept-modules span{padding:14px 8px;background:#e6e3da;font-size:11px;text-align:center}
.sm-concept-status{display:flex;justify-content:center;align-items:center;gap:15px;margin-top:24px;font-size:10px}.sm-concept-status i{color:var(--wine);font-style:normal}
.sm-concept figcaption{font-size:9px;color:var(--muted);border-top:1px solid var(--line);padding:12px 18px;line-height:1.8}
.sm-introduction{display:grid;grid-template-columns:1fr 1fr;gap:8%}.sm-introduction>div>p:not(.eyebrow){font-size:13px;line-height:2.3;margin-bottom:20px}.sm-introduction>div>p:last-child{margin-bottom:0}
.sm-features{background:#eae7e0}.sm-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px 32px}.sm-feature-grid article{border-top:1px solid #c8c4ba;padding-top:22px}.sm-feature-number{font:italic 24px Georgia,serif;color:var(--wine)}.sm-feature-grid h3{font:500 22px/1.6 var(--serif);margin:20px 0 14px}.sm-feature-grid p{font-size:12px;color:var(--muted);line-height:2.1}.sm-functional-note{font-size:11px;color:var(--muted);margin-top:35px;border-top:1px solid #c8c4ba;padding-top:20px}
.sm-benefit-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%}.sm-benefit-grid article{border-top:2px solid var(--wine);padding-top:25px}.sm-benefit-grid article>.eyebrow{font-size:9px}.sm-benefit-grid h3{font:500 27px/1.6 var(--serif);margin-bottom:30px}.sm-benefit-grid ul{padding:0;margin:0;list-style:none}.sm-benefit-grid li{border-top:1px solid var(--line);padding:20px 0}.sm-benefit-grid strong{font-size:14px;font-weight:500}.sm-benefit-grid li p{font-size:12px;line-height:2.1;color:var(--muted);margin-top:10px}
.sm-workflow{display:grid;grid-template-columns:1fr 1.4fr;gap:8%;background:var(--ink);color:var(--paper)}.sm-workflow .eyebrow,.sm-workflow .company-section-note{color:#cbb8a3}.sm-workflow .text-link{border-color:#8c9293;margin-top:25px}.sm-workflow-list{padding:0;margin:0;list-style:none}.sm-workflow-list li{display:flex;gap:25px;border-top:1px solid #ffffff26;padding:25px 0}.sm-workflow-list li:last-child{border-bottom:1px solid #ffffff26}.sm-workflow-number{font:italic 24px Georgia,serif;color:#cbb8a3;min-width:30px}.sm-role{font-size:9px;letter-spacing:.1em;background:#ffffff12;color:#d2c5b4;padding:4px 12px;display:inline-block}.sm-workflow-list h3{font:500 22px/1.7 var(--serif);margin:12px 0}.sm-workflow-list p{font-size:12px;line-height:2.1;color:#c2c5c5}
.sm-consultation-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.sm-consultation-grid article{background:#eae7e0;padding:35px}.sm-consultation-grid h3{font:500 24px/1.7 var(--serif);margin-bottom:20px}.sm-consultation-grid article>.eyebrow{font-size:9px}.sm-consultation-grid article>p:not(.eyebrow){font-size:13px;line-height:2.1}.sm-consultation-grid ol{margin:25px 0;padding-left:22px;font-size:12px}.sm-consultation-grid li{padding:10px 0;border-bottom:1px solid #d2cec4}.sm-consultation-grid li::marker{color:var(--wine)}.sm-consultation-grid article>p.sm-terms-note{font-size:11px;color:var(--muted);border-left:2px solid var(--wine);padding-left:15px}
@media(max-width:960px){.sm-hero{padding-left:6%;padding-right:6%}.sm-hero-grid{grid-template-columns:1fr;gap:45px}.sm-concept{max-width:600px;width:100%;margin:auto}.sm-introduction{grid-template-columns:1fr;gap:30px}.sm-feature-grid{grid-template-columns:1fr 1fr}.sm-workflow{grid-template-columns:1fr;gap:35px}.sm-consultation-grid article{padding:25px}.sm-consultation-grid h3{font-size:22px}.sm-benefit-grid{gap:35px}.sm-benefit-grid h3{font-size:24px}}
@media(max-width:640px){.sm-hero{padding:22px 7% 55px}.sm-hero-grid{padding-top:45px;gap:35px}.sm-wordmark{font-size:36px}main.stockmart-page .sm-hero h1{font-size:31px}.sm-hero-copy>p:not(.eyebrow):not(.sm-wordmark){font-size:11px}.sm-hero-copy>p br{display:none}.sm-concept-bar{padding:18px}.sm-concept-bar strong{font-size:22px}.sm-concept-content{padding:22px 18px}.sm-concept-nodes{gap:18px}.sm-concept-nodes>span{width:80px;height:80px;font-size:20px}.sm-concept figcaption{font-size:8px;padding:12px}.sm-feature-grid,.sm-benefit-grid,.sm-consultation-grid{grid-template-columns:1fr}.sm-feature-grid{gap:28px}.sm-feature-grid h3{font-size:22px;margin-top:15px}.sm-benefit-grid{gap:30px}.sm-benefit-grid h3{font-size:24px;margin-bottom:20px}.sm-workflow-list li{gap:16px}.sm-workflow-list h3{font-size:21px}.sm-workflow-number{font-size:21px}.sm-consultation-grid{gap:25px}.sm-consultation-grid article{padding:25px}.sm-consultation-grid h3{font-size:22px}.sm-consultation-grid article>p:not(.eyebrow){font-size:12px}}

/* StockMart actual screens: styles confined to this section. */
.stockmart-page .sm-screens{background:var(--paper)}
.sm-screens .sm-screen-group{border-top:2px solid var(--wine);padding-top:25px;min-width:0}
.sm-screens .sm-screen-group+.sm-screen-group{margin-top:60px}
.sm-screens .sm-screen-group h3{font:500 27px/1.6 var(--serif);margin-bottom:16px}
.sm-screens .sm-screen-description{font-size:13px;line-height:2.2;color:var(--muted);max-width:850px;margin-bottom:28px}
.sm-screens .sm-screen-grid{display:grid;grid-template-columns:minmax(0,2.4fr) minmax(0,1fr);gap:32px;align-items:start}
.sm-screens .sm-screen-figure{margin:0;min-width:0}
.sm-screens .sm-screen-figure a{display:block;border:1px solid var(--line);background:white;cursor:zoom-in}
.sm-screens .sm-screen-figure a:hover{border-color:var(--wine)}
.sm-screens .sm-screen-figure img{display:block;width:100%;height:auto}
.sm-screens .sm-screen-figure figcaption{font-size:11px;line-height:1.8;color:var(--muted);padding-top:10px}
.sm-screens .sm-screen-warehouse{width:100%;max-width:1200px}
.sm-screens .sm-screen-note{margin-top:24px;color:#7a7d78;font-size:11px;line-height:1.8}
@media(max-width:640px){.sm-screens .sm-screen-grid{grid-template-columns:minmax(0,1fr);gap:28px}.sm-screens .sm-screen-mobile{width:100%;max-width:280px;margin-inline:auto}.sm-screens .sm-screen-group+.sm-screen-group{margin-top:40px}.sm-screens .sm-screen-group h3{font-size:22px}.sm-screens .sm-screen-description{font-size:12px}}

/* Legacy article media: keep full images and long external URLs inside the article. */
.news-article-body p{margin:0 0 1.2em}
.news-article-body img{display:block;max-width:100%;height:auto;margin:24px 0}
.news-article-body a{color:var(--wine);text-decoration:underline;text-underline-offset:.2em;overflow-wrap:anywhere}
.news-related-links{margin-top:32px;border-top:1px solid var(--line);padding-top:20px;font-size:13px}
.news-related-links ul{padding-left:1.5em}.news-related-links li{margin-top:10px}

/* StockOrder and VinStock: shared product presentation, scoped to new pages. */
main.product-page{max-width:none;margin:0;padding:0}
.product-page .product-hero{background:var(--ink);color:var(--paper);padding:28px 8% 80px}
.product-page .product-hero-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:7%;align-items:center;padding-top:60px}
.product-page .product-wordmark{font:46px/1.2 Georgia,serif;letter-spacing:.02em;margin-bottom:25px}
.product-page .product-status{display:inline-block;border:1px solid #cbb8a3;color:#e2d6c6;padding:3px 12px;font-size:11px;letter-spacing:.12em;margin-bottom:20px}
main.product-page .product-hero h1{font:500 clamp(30px,3.5vw,49px)/1.7 var(--serif);letter-spacing:.06em;margin:0 0 25px}
.product-page .product-lead{font-size:13px;line-height:2.2;color:#d1d4d0;max-width:520px;margin-bottom:30px}
.product-page .product-diagram{margin:0;padding:28px;background:var(--paper);color:var(--ink);border:1px solid #c8c4b4;min-width:0}
.product-page .product-diagram figcaption{font:500 19px/1.7 var(--serif);border-bottom:1px solid var(--line);padding-bottom:16px}
.product-page .product-diagram ol{list-style:none;margin:22px 0;padding:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}
.product-page .product-diagram li{padding:18px 12px;border-left:2px solid var(--wine);background:#eae7e0;min-width:0}
.product-page .product-diagram li span{display:block;font:10px/1.5 Georgia,serif;letter-spacing:.07em;color:var(--wine);margin-bottom:8px}
.product-page .product-diagram li strong{font-size:13px;font-weight:500;line-height:1.7}
.product-page .product-diagram>p{font-size:10px;line-height:1.9;color:var(--muted)}
.product-page .product-overview,.product-page .product-consultation{display:grid;grid-template-columns:1fr 1.1fr;gap:8%}
.product-page .product-prose>p{font-size:13px;line-height:2.3;margin-bottom:20px}
.product-page .product-benefits,.product-page .product-related{background:#eae7e0}
.product-page .product-benefit-grid,.product-page .product-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.product-page .product-benefit-grid article{border-top:1px solid #c8c4ba;padding-top:24px;min-width:0}
.product-page .product-number{font:italic 24px/1.5 Georgia,serif;color:var(--wine)}
.product-page .product-benefit-grid h3{font:500 23px/1.6 var(--serif);margin:18px 0 15px}
.product-page .product-benefit-grid p,.product-page .product-related-grid p{font-size:12px;line-height:2.1;color:var(--muted)}
.product-page .product-feature-groups{display:grid;gap:50px}
.product-page .product-feature-groups article{min-width:0}
.product-page .product-feature-groups h3{font:500 27px/1.7 var(--serif);margin-bottom:25px}
.product-page .product-feature-groups dl{margin:0;border-top:1px solid var(--line)}
.product-page .product-feature-groups dl>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.5fr);gap:30px;padding:22px 0;border-bottom:1px solid var(--line)}
.product-page .product-feature-groups dt{font-size:14px;font-weight:500}
.product-page .product-feature-groups dd{margin:0;font-size:13px;line-height:2.1;color:var(--muted)}
.product-page .product-note{font-size:11px;line-height:2;color:var(--muted);border-left:2px solid var(--wine);padding-left:16px;margin-top:25px}
.product-page .product-workflow{background:var(--ink);color:var(--paper);display:grid;grid-template-columns:1fr 1.3fr;gap:8%}
.product-page .product-workflow-heading>p:last-child{font-size:12px;color:#c9ceca;margin-top:24px;line-height:2.2}
.product-page .product-step-list{padding:0;margin:0;list-style:none;min-width:0}
.product-page .product-step-list li{display:flex;gap:25px;padding:25px 0;border-top:1px solid #ffffff26}
.product-page .product-step-list .product-number{color:#cbb8a3;flex-shrink:0}
.product-page .product-step-list h3{font:500 22px/1.7 var(--serif);margin-bottom:12px}
.product-page .product-step-list p{font-size:12px;line-height:2.1;color:#c9ceca}
.product-page .product-related-grid>a{display:block;border-top:2px solid var(--wine);padding-top:24px;min-width:0}
.product-page .product-related-grid>a:hover h3{color:var(--wine)}
.product-page .product-related-grid>a[aria-current]{border-top-color:var(--ink)}
.product-page .product-related-grid .eyebrow{display:block;font-size:9px}
.product-page .product-related-grid h3{font:500 27px/1.7 Georgia,serif;margin-bottom:14px}
.product-page .product-related-grid h3 span{float:right;font:20px var(--sans)}
.product-page .product-phone{display:block;width:fit-content;font:26px/1.6 Georgia,serif;color:var(--wine);margin:20px 0}
.footer-product-nav{display:flex;flex-wrap:wrap;gap:16px 32px;padding:0 0 25px;font-size:12px}
.footer-product-nav a:hover{color:var(--wine)}
.footer-product-nav span{font-size:10px;color:var(--muted);margin-left:5px}
@media(max-width:960px){.product-page .product-hero{padding-left:6%;padding-right:6%}.product-page .product-hero-grid,.product-page .product-overview,.product-page .product-consultation,.product-page .product-workflow{grid-template-columns:minmax(0,1fr);gap:35px}.product-page .product-diagram{max-width:640px;width:100%;margin:auto}.product-page .product-benefit-grid,.product-page .product-related-grid{gap:22px}}
@media(max-width:640px){.product-page .product-hero{padding:22px 7% 50px}.product-page .product-hero-grid{padding-top:40px}.product-page .product-wordmark{font-size:38px}.product-page .product-hero .eyebrow{font-size:9px}main.product-page .product-hero h1{font-size:clamp(25px,6.8vw,36px);letter-spacing:.03em}.product-page .product-lead,.product-page .product-prose>p{font-size:12px}.product-page .product-diagram{padding:22px 18px}.product-page .product-diagram ol{gap:12px}.product-page .product-diagram li{padding:14px 10px}.product-page .product-diagram li strong{font-size:12px}.product-page .product-benefit-grid,.product-page .product-related-grid{grid-template-columns:minmax(0,1fr);gap:35px}.product-page .product-feature-groups dl>div{grid-template-columns:minmax(0,1fr);gap:10px;padding:20px 0}.product-page .product-feature-groups dd{font-size:12px}.product-page .product-feature-groups h3{font-size:23px}.product-page .product-step-list li{gap:18px}.product-page .product-step-list h3{font-size:20px}.footer-product-nav{gap:14px 22px;font-size:11px}}

/* Contact preview: validation only, no submission. */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
main.contact-page{max-width:none;margin:0;padding:0}.contact-hero{background:var(--ink);color:var(--paper);padding:28px 8% 65px}.contact-hero-content{padding-top:60px}main.contact-page .contact-hero h1{font:500 clamp(36px,4.2vw,60px)/1.6 var(--serif);letter-spacing:.08em;margin:0 0 25px}.contact-hero-content>p:last-child{font-size:13px;line-height:2.2;color:#c9ceca}
.contact-layout{display:grid;grid-template-columns:1fr 1.8fr;gap:9%;align-items:start}.contact-guide>p:not(.eyebrow){font-size:13px;line-height:2.2;color:var(--muted);margin-top:25px}.contact-guide h2{font-size:34px}.contact-guide-item{border-top:1px solid var(--line);margin-top:30px;padding-top:25px}.contact-guide-item h3{font:500 21px/1.7 var(--serif);margin-bottom:13px}.contact-guide-item p{font-size:12px;line-height:2.1;color:var(--muted)}.contact-guide-item .text-link{margin-top:16px;font-size:11px}
.contact-form-area{min-width:0}.contact-preparing{border-top:3px solid var(--wine);padding:26px;background:#eae7e0}.contact-status{display:inline-block;color:var(--wine);border:1px solid var(--wine);padding:3px 13px;font-size:11px;letter-spacing:.08em;margin-bottom:17px}.contact-preparing h2{font:500 25px/1.7 var(--serif);margin-bottom:15px}.contact-preparing p{font-size:13px;line-height:2}.contact-preparing p.contact-preview-note{font-size:11px;margin-top:13px;color:var(--muted)}
.contact-fields{border:0;margin:0;padding:28px 0 0;min-width:0}.contact-required-note{font-size:11px;color:var(--muted);margin-bottom:30px}.field-required,.field-optional{display:inline-block;font:10px/1.5 var(--sans);padding:2px 7px;vertical-align:middle;white-space:nowrap;margin-left:8px}.field-required{color:var(--wine);background:#8b1e2d0c;border:1px solid #8b1e2d33}.field-optional{color:#626965;border:1px solid #c8cbc4}.contact-required-note .field-required{margin:0 5px 0 0}
.contact-field{margin-bottom:27px}.contact-field label{display:block;font-size:13px;font-weight:600;margin-bottom:10px}.contact-field input,.contact-field select,.contact-field textarea{display:block;width:100%;min-width:0;min-height:50px;border:1px solid #c5c6bd;border-radius:2px;background:#faf9f6;color:var(--ink);padding:12px 14px;font:16px/1.7 var(--sans)}.contact-field textarea{resize:vertical;min-height:200px}.contact-field select{padding-right:30px}.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{outline:2px solid var(--wine);outline-offset:2px;border-color:var(--wine)}.field-hint{font-size:10px;color:var(--muted);margin-top:7px;line-height:1.9}
.contact-privacy{padding:23px;background:#eae7e0;margin-top:35px}.contact-privacy .eyebrow{font-size:8px;margin-bottom:12px}.contact-privacy h3{font-size:14px;margin-bottom:12px}.contact-privacy p:not(.eyebrow){font-size:12px;color:var(--muted);line-height:2.1}.contact-consent{display:flex;align-items:flex-start;gap:13px;margin-top:20px}.contact-consent input{width:20px;height:20px;flex:0 0 20px;margin:12px 0;accent-color:var(--wine)}.contact-consent label{font-size:12px;padding:9px 0;cursor:pointer;line-height:2}.contact-actions{text-align:center;border-top:1px solid var(--line);margin-top:25px;padding-top:25px}.contact-check{border:1px solid var(--wine);color:var(--wine);background:transparent;min-height:48px;padding:13px 22px;cursor:pointer;font-size:12px}.contact-check:hover{background:#8b1e2d0c}.contact-check[hidden]{display:none}.contact-actions [role=status]{font-size:12px;color:var(--wine);margin:15px 0}.contact-submit{display:block;width:100%;background:#deddd6;color:#686b64;border:1px solid #c9cbc2;min-height:56px;padding:15px;font-size:13px;cursor:not-allowed}.contact-actions>p:last-child{font-size:11px;color:var(--muted);margin-top:12px}
@media(max-width:960px){.contact-hero{padding-left:6%;padding-right:6%}.contact-layout{grid-template-columns:1fr;gap:45px}.contact-guide h2 br{display:none}.contact-guide-item{max-width:650px}}
@media(max-width:640px){.contact-hero{padding:22px 7% 45px}.contact-hero-content{padding-top:40px}main.contact-page .contact-hero h1{font-size:36px}.contact-hero-content>p:last-child{font-size:12px}.contact-guide h2{font-size:29px}.contact-preparing{padding:22px}.contact-preparing h2{font-size:23px}.contact-preparing p{font-size:12px}.contact-privacy{padding:20px}.contact-privacy h3{font-size:13px}.contact-field{margin-bottom:25px}.contact-consent label{font-size:11px}.contact-check{width:100%;font-size:11px;padding:13px 10px}}

/* Privacy policy uses the shared typography, colors, header and footer. */
main.privacy-page{max-width:1120px;margin:0 auto;padding:65px 6% 100px;overflow-wrap:anywhere}
.privacy-breadcrumb{display:flex;flex-wrap:wrap;gap:12px;font-size:11px;color:var(--muted);margin-bottom:45px}
.privacy-heading h1{font-family:var(--serif);font-size:clamp(26px,3.4vw,42px);font-weight:500;line-height:1.5;margin-bottom:20px}
.privacy-heading>p:last-child{font-size:13px;color:var(--muted);line-height:2}
.privacy-draft{padding:24px;margin:35px 0;background:#eae7e0;border-left:3px solid var(--wine);font-size:13px;line-height:2}
.privacy-draft p{margin-top:8px}.privacy-content{max-width:780px;font-size:14px;line-height:2.2}
.privacy-content section{margin-top:38px;padding-top:30px;border-top:1px solid var(--line)}
.privacy-content h2{font-family:var(--serif);font-size:23px;line-height:1.7;letter-spacing:.02em;margin-bottom:15px}
.privacy-content p+p{margin-top:14px}.privacy-content ul{padding-left:1.5em;margin:14px 0}.privacy-content address{font-style:normal;margin:18px 0}
.privacy-content address a,.privacy-breadcrumb a{text-decoration:underline;text-underline-offset:4px}.privacy-endnote{color:var(--muted);margin:35px 0}
.footer-bottom{flex-wrap:wrap}
@media(max-width:640px){main.privacy-page{padding:35px 7% 65px}.privacy-breadcrumb{margin-bottom:30px}.privacy-draft{padding:18px}.privacy-content{font-size:13px}.privacy-content h2{font-size:20px}}

/* Contact input, confirmation and receipt states. */
.contact-submit:not(:disabled){background:var(--wine);border-color:var(--wine);color:var(--paper);cursor:pointer}
.contact-submit:not(:disabled):hover{background:#701725}
.contact-actions .contact-check{margin-bottom:16px}
.contact-error{margin-top:24px;border-left:3px solid var(--wine);background:#8b1e2d0c;padding:20px;color:var(--wine);font-size:13px}
.contact-error ul{padding-left:20px;margin-top:10px}
.contact-confirm,.contact-result{padding:30px 0;font-size:14px;line-height:2;overflow-wrap:anywhere}
.contact-confirm h3,.contact-result h3{font:500 24px/1.8 var(--serif);margin-bottom:18px}
.contact-confirm dl{margin-top:24px}.contact-confirm dt{font-weight:600;margin-top:20px}.contact-confirm dd{margin:8px 0 0;padding-bottom:20px;border-bottom:1px solid var(--line)}
.contact-receipt{margin:24px 0}.contact-result .text-link{margin-top:20px}
.contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
@media(max-width:640px){.contact-confirm h3,.contact-result h3{font-size:21px}.contact-confirm,.contact-result{font-size:13px}}

/* Home news: keep the public listing and other pages unchanged. */
.home-news-list{min-width:0;margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}
.home-news-list li{border-bottom:1px solid var(--line)}
.home-news-list a{display:grid;grid-template-columns:100px minmax(0,1fr) 18px;gap:24px;align-items:baseline;padding:25px 0}
.home-news-list time{font:13px Georgia,serif;color:var(--muted);white-space:nowrap}
.home-news-title{font-size:14px;line-height:1.9;overflow-wrap:anywhere}
.home-news-arrow{color:var(--wine);font-size:20px}
.home-news-list a:hover .home-news-title,.home-news-list a:focus-visible .home-news-title{color:var(--wine);text-decoration:underline;text-underline-offset:.25em}
@media(max-width:640px){.home-news-list a{grid-template-columns:minmax(0,1fr) 18px;gap:10px 16px;padding:21px 0}.home-news-list time{grid-column:1/-1;font-size:12px}.home-news-title{font-size:13px}}

/* Public news pages */
main.news-page{max-width:none;padding:0;margin:0}.news-hero{background:var(--ink);color:var(--paper);padding:28px 8% 65px}.news-hero>div{padding-top:55px}main.news-page .news-hero h1{font:500 clamp(36px,4.2vw,60px)/1.6 var(--serif);letter-spacing:.08em;margin:0 0 20px}.news-hero>div>p:last-child{font-size:13px;color:#c9ceca}.news-content{min-height:350px}.news-preview-notice{padding:18px 22px;border-left:3px solid var(--wine);background:#eae7e0;color:var(--wine);font-size:12px;margin-bottom:30px}.news-state{padding:35px 0}.news-state h2,main.news-page .news-state h1{font:500 clamp(22px,2.5vw,32px)/1.8 var(--serif);margin:0 0 20px}.news-state>p:not(.eyebrow){font-size:13px;color:var(--muted)}.news-article-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.news-article-list li{border-bottom:1px solid var(--line)}.news-article-list a{display:grid;grid-template-columns:130px 1fr 25px;gap:30px;align-items:baseline;padding:30px 0}.news-article-list time{font:13px Georgia,serif;color:var(--muted)}.news-article-list h2{font:500 19px/1.9 var(--sans);letter-spacing:.02em;overflow-wrap:anywhere}.news-article-list a>span{color:var(--wine);font-size:22px}.news-article-list a:hover h2{color:var(--wine)}.news-detail-breadcrumb{padding:28px 8%;border-bottom:1px solid var(--line)}.news-detail-breadcrumb nav{display:flex;flex-wrap:wrap;gap:15px;font-size:10px;color:var(--muted)}.news-detail-content{max-width:1100px;margin:0 auto;min-height:50vh}.news-article-header{border-bottom:1px solid var(--line);padding-bottom:30px}.news-article-header time{font:13px Georgia,serif;color:var(--muted)}main.news-page .news-article-header h1{font:500 clamp(25px,3vw,40px)/1.7 var(--serif);margin:20px 0 0;overflow-wrap:anywhere}.news-article-body{padding-top:35px;font-size:15px;line-height:2.2;overflow-wrap:anywhere}.news-back{margin-top:50px}.news-index-link{margin-top:20px}
@media(max-width:960px){.news-hero,.news-detail-breadcrumb{padding-left:6%;padding-right:6%}.news-article-list a{grid-template-columns:100px 1fr 20px;gap:20px}}
@media(max-width:640px){.news-hero{padding:22px 7% 45px}.news-hero>div{padding-top:40px}.news-detail-breadcrumb{padding:22px 7%}.news-article-list a{grid-template-columns:1fr 20px;gap:12px;padding:25px 0}.news-article-list time{grid-column:1/-1;font-size:12px}.news-article-list h2{font-size:16px}.news-article-body{font-size:14px}.news-preview-notice{font-size:11px;padding:16px}.news-content{min-height:300px}}

/* Personal wine storage: scoped additions to the shared service layouts. */
.personal-storage-page .detail-copy .text-link{margin-top:25px}
.personal-storage-page .consultation-note .text-link{margin-top:18px}
.personal-storage-page .sm-workflow-list p+p{margin-top:14px}
@media(min-width:961px){.site-nav{min-width:0}.site-nav ul{gap:8px 22px;flex-wrap:wrap;justify-content:flex-end}}
