
:root{--green:#153a2d;--deep:#0d291f;--sand:#eee9de;--cream:#f7f4ed;--ink:#16201a;--orange:#d65d34;--line:rgba(22,32,26,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"Helvetica Neue","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif}a{color:inherit;text-decoration:none}main{overflow:hidden}.section{padding:130px max(5vw,32px)}
.site-header{position:absolute;z-index:20;top:0;left:0;width:100%;height:92px;display:flex;align-items:center;padding:0 4vw;color:#fff;border-bottom:1px solid rgba(255,255,255,.3)}.logo{display:flex;align-items:center;gap:11px;font-weight:800;letter-spacing:.07em;line-height:.9}.logo small{display:block;font-size:8px;letter-spacing:.3em;margin-top:7px}.logo-mark{display:grid;place-items:center;width:38px;height:38px;border:1.5px solid currentColor;border-radius:50%;font:700 19px Georgia,serif}.desktop-nav{margin-left:auto;display:flex;gap:36px;font-size:11px;font-weight:700;letter-spacing:.13em}.desktop-nav a,.footer-bottom a{transition:opacity .2s}.desktop-nav a:hover,.footer-bottom a:hover{opacity:.55}.header-cta{height:92px;margin-left:38px;padding:0 30px;display:flex;gap:22px;align-items:center;background:var(--orange);font-size:11px;font-weight:800;letter-spacing:.12em}.mobile-menu{display:none}
.site-header.is-fixed{position:fixed;height:72px;background:rgba(13,41,31,.96);backdrop-filter:blur(12px);animation:headerIn .35s ease both}.site-header.is-fixed .header-cta{height:72px}@keyframes headerIn{from{transform:translateY(-100%)}to{transform:translateY(0)}}
.hero{height:100vh;height:100svh;height:100dvh;min-height:0;position:relative;color:#fff;overflow:hidden}.hero-image{position:absolute;inset:0;background:url('../images/hero.jpg') center/cover no-repeat;transform:none}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,18,12,.74),rgba(5,18,12,.08)),linear-gradient(0deg,rgba(4,16,11,.58),transparent 48%)}.hero-content{position:absolute;left:max(7vw,48px);top:51%;transform:translateY(-45%)}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.24em;color:var(--orange);margin:0 0 24px}.eyebrow.light{color:#d6dfd7}.hero h1{font-family:Georgia,"Yu Mincho",serif;font-size:clamp(56px,7.7vw,118px);font-weight:400;line-height:1.1;letter-spacing:-.035em;margin:0}.hero-lead{font-size:14px;line-height:2.05;margin:32px 0 0;letter-spacing:.06em}.hero-bottom{position:absolute;left:max(7vw,48px);right:4vw;bottom:36px;display:flex;justify-content:space-between;align-items:end;font-size:9px;font-weight:700;letter-spacing:.18em}.hero-bottom a{display:flex;gap:24px;align-items:center}.hero-bottom b{font-size:20px}
.section-head{max-width:1240px;margin:0 auto 74px;display:grid;grid-template-columns:1.2fr .8fr;align-items:end;gap:80px}.section-head h2,.commitment h2,.company h2,.news h2,.brands h2,.footer h2,.journal-banner h2,.recruit h2{font-family:Georgia,"Yu Mincho",serif;font-size:clamp(38px,4.6vw,70px);font-weight:400;line-height:1.35;letter-spacing:-.025em;margin:0}.section-copy{max-width:480px;font-size:14px;line-height:2.15;margin:0;color:#435048}.category-grid{max-width:1400px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:2px;background:#fff}.category-card{position:relative;aspect-ratio:.72;background-position:center;background-size:cover;color:#fff;padding:28px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.category-card:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,23,15,.8),transparent 65%);transition:background .3s}.category-card>*{position:relative}.category-card>span:last-child{position:absolute;right:28px;bottom:29px;font-size:22px;transition:transform .25s}.category-card:hover>span:last-child{transform:translate(5px,-5px)}.card-no{font:italic 16px Georgia,serif}.category-card p{font-size:10px;font-weight:700;letter-spacing:.2em;margin:0 0 8px}.category-card h3{font-size:18px;margin:0;letter-spacing:.08em}
.category-shelter{background-image:url('../images/category-shelter.jpg')}.category-sleep{background-image:url('../images/category-sleep.jpg')}.category-cook{background-image:url('../images/category-cook.jpg')}.category-wear{background-image:url('../images/category-wear.jpg')}
.services-block{max-width:1240px;margin:130px auto 0;display:grid;grid-template-columns:.8fr 1.4fr;gap:9vw}.services-title h3{font-family:Georgia,"Yu Mincho",serif;font-size:35px;font-weight:400;line-height:1.55;margin:0}.service-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.service-grid article{min-height:130px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:26px}.service-grid article:nth-child(odd){border-right:1px solid var(--line);padding-right:30px}.service-grid article:nth-child(even){padding-left:30px}.service-grid article>span{font:italic 18px Georgia,serif;color:var(--orange)}.service-grid small{font-size:9px;letter-spacing:.16em;color:#69736d}.service-grid h4{font-size:14px;margin:8px 0 0;letter-spacing:.05em}
.commitment{min-height:760px;display:grid;grid-template-columns:1.05fr .95fr;background:var(--sand)}.commitment-photo{background:url('../images/commitment.jpg') center/cover}.commitment-body{padding:110px 9vw 90px 8vw;display:flex;flex-direction:column;justify-content:center}.commitment-body p:not(.eyebrow){font-size:14px;line-height:2.15;color:#485149;margin:35px 0 0;max-width:500px}.text-link{display:inline-flex;width:max-content;align-items:center;gap:50px;border-bottom:1px solid var(--ink);padding:18px 0 12px;margin-top:38px;font-size:12px;font-weight:700;letter-spacing:.07em}.text-link span{font-size:17px}
.journal-banner{min-height:610px;padding:100px max(7vw,48px);display:flex;align-items:end;justify-content:space-between;color:#fff;background:linear-gradient(90deg,rgba(9,31,22,.73),rgba(9,31,22,.2)),url('../images/journal.jpg') center/cover}.journal-banner a{width:210px;display:flex;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.6);padding:18px 0;font-size:12px;font-weight:700}
.company{max-width:1500px;margin:auto;display:grid;grid-template-columns:1.15fr .85fr;gap:8vw;align-items:center}.company-visual{min-height:600px;background:linear-gradient(0deg,rgba(7,31,20,.6),transparent 55%),url('../images/company.jpg') center/cover;position:relative;color:#fff}.company-visual>div{position:absolute;left:55px;bottom:50px}.company-links{border-top:1px solid var(--line)}.company-links a{display:grid;grid-template-columns:50px 1fr auto;align-items:center;padding:28px 5px;border-bottom:1px solid var(--line);transition:padding .2s,background .2s}.company-links a:hover{padding-left:15px;background:#fff}.company-links span{font:italic 13px Georgia;color:var(--orange)}.company-links b{font-size:15px;letter-spacing:.06em}.company-links a>span:last-child{font-size:20px;color:var(--ink)}
.recruit{background:var(--green);color:#fff;display:grid;grid-template-columns:.78fr 1.22fr;min-height:680px}.recruit-copy{padding:100px max(6vw,50px);display:flex;flex-direction:column;justify-content:center}.recruit-copy p:not(.eyebrow){font-size:13px;line-height:2;margin:28px 0 35px;color:#d2dbd5}.outline-btn{border:1px solid rgba(255,255,255,.5);padding:17px 22px;display:flex;justify-content:space-between;max-width:250px;font-size:12px}.recruit-collage{display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:1fr 1fr;gap:2px;padding:50px 50px 50px 0}.recruit-collage div{background-position:center;background-size:cover}.recruit-collage div:first-child{grid-row:1/3;background-image:url('../images/recruit-1.jpg')}.recruit-collage div:nth-child(2){background-image:url('../images/recruit-2.jpg')}.recruit-collage div:nth-child(3){background-image:url('../images/recruit-3.jpg')}
.news{max-width:1500px;margin:auto}.title-row{display:flex;align-items:end;justify-content:space-between;margin-bottom:60px}.title-row>p{font-size:13px;line-height:1.9;color:#67716a}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.news-image{aspect-ratio:1.45;background-size:cover;background-position:center;position:relative;overflow:hidden}.news-image:after{content:"";position:absolute;inset:0;background:rgba(13,41,31,.18);opacity:0;transition:opacity .2s}.news a:hover .news-image:after{opacity:1}.news-image>span{position:absolute;z-index:1;right:0;bottom:0;width:48px;height:48px;display:grid;place-items:center;background:var(--cream);font-size:18px}.news-meta{display:flex;gap:18px;margin:20px 0 12px;font-size:9px;letter-spacing:.13em}.news-meta b{color:var(--orange)}.news h3{font-size:14px;line-height:1.8;margin:0;letter-spacing:.03em}.brands{background:var(--sand)}.brands .title-row{max-width:1240px;margin:0 auto 60px}.brand-list{max-width:1240px;margin:auto;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(5,1fr)}.brand-list span{padding:55px 10px;text-align:center;border-bottom:1px solid var(--line);font:700 16px Georgia,serif;letter-spacing:.05em}.brand-list span:not(:last-child){border-right:1px solid var(--line)}
.news-img-1{background-image:url('../images/news-1.jpg')}.news-img-2{background-image:url('../images/news-2.jpg')}.news-img-3{background-image:url('../images/news-3.jpg')}
.footer{background:var(--deep);color:#fff;padding:115px max(5vw,32px) 40px}.footer-top{max-width:1300px;margin:auto;display:flex;justify-content:space-between;align-items:end;padding-bottom:90px}.contact-buttons{width:min(430px,40vw)}.contact-buttons a{display:flex;justify-content:space-between;padding:22px 2px;border-bottom:1px solid rgba(255,255,255,.35);font-size:12px}.footer-bottom{max-width:1300px;margin:auto;padding-top:35px;border-top:1px solid rgba(255,255,255,.25);display:grid;grid-template-columns:1fr 1fr auto;align-items:end}.footer-bottom>div{display:flex;gap:28px;font-size:9px;letter-spacing:.12em}.footer-bottom p{margin:0;font-size:8px;color:#9aaaa0;letter-spacing:.1em}
@media(max-width:900px){.section{padding:90px 24px}.site-header{height:72px;padding:0 22px}.logo{font-size:13px}.logo-mark{width:32px;height:32px}.desktop-nav,.header-cta{display:none}.mobile-menu{display:block;margin-left:auto;position:relative}.mobile-menu summary{list-style:none;width:38px;height:38px;display:grid;align-content:center;gap:7px;cursor:pointer}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary i{height:1px;background:#fff;display:block}.mobile-menu nav{position:absolute;right:-22px;top:53px;width:100vw;background:var(--deep);padding:30px 25px;display:grid;gap:0}.mobile-menu nav a{padding:16px;border-bottom:1px solid rgba(255,255,255,.15);font-size:12px;letter-spacing:.12em}.hero{height:100vh;height:100svh;height:100dvh;min-height:0}.hero-content{left:25px;right:25px;top:48%}.hero h1{font-size:clamp(48px,13vw,76px)}.hero-lead{font-size:12px}.hero-bottom{left:25px;right:25px}.hero-bottom>span{display:none}.section-head{grid-template-columns:1fr;gap:30px;margin-bottom:45px}.section-copy{font-size:13px}.category-grid{grid-template-columns:1fr 1fr}.category-card{aspect-ratio:.78;padding:20px}.services-block{margin-top:85px;grid-template-columns:1fr;gap:45px}.service-grid article{min-height:105px}.commitment{grid-template-columns:1fr}.commitment-photo{min-height:420px}.commitment-body{padding:75px 25px}.journal-banner{min-height:500px;padding:70px 25px;display:block}.journal-banner a{margin-top:50px}.company{grid-template-columns:1fr;gap:55px}.company-visual{min-height:500px}.recruit{grid-template-columns:1fr}.recruit-copy{padding:80px 25px}.recruit-collage{min-height:480px;padding:0 24px 50px}.news-grid{grid-template-columns:1fr 1fr}.brand-list{grid-template-columns:1fr 1fr}.brand-list span:nth-child(even){border-right:0}.footer-top{display:block}.contact-buttons{width:100%;margin-top:55px}.footer-bottom{grid-template-columns:1fr;gap:35px}.footer-bottom>div{flex-wrap:wrap}}
@media(max-width:560px){.eyebrow{margin-bottom:18px}.hero-image{background-position:74% center}.hero h1{font-size:50px}.hero-lead br{display:none}.category-grid{grid-template-columns:1fr}.category-card{aspect-ratio:1.05}.service-grid{grid-template-columns:1fr}.service-grid article:nth-child(odd){border-right:0;padding-right:0}.service-grid article:nth-child(even){padding-left:0}.commitment-photo{min-height:330px}.company-visual{min-height:390px}.company-visual>div{left:25px;bottom:25px}.recruit-collage{grid-template-columns:1fr 1fr;grid-template-rows:1.2fr .8fr;min-height:500px}.recruit-collage div:first-child{grid-column:1/3;grid-row:auto}.news-grid{grid-template-columns:1fr}.news article+article{margin-top:22px}.title-row{align-items:start;gap:30px}.title-row>p{display:none}.brands .title-row{margin-bottom:35px}.brand-list span{padding:35px 8px;font-size:12px}.footer{padding-top:80px}.footer-top{padding-bottom:65px}.footer-bottom>div{gap:20px}}

/* Interaction and visual refinements */
:focus-visible{outline:2px solid var(--orange);outline-offset:5px}
.hero{height:100vh;height:100svh;height:100dvh;min-height:0;overflow:hidden}
.hero-image,.hero-shade{inset:0;width:100%;height:100%;transform:none}
.hero-image{background-position:center center}
.hero-shade{background:linear-gradient(90deg,rgba(5,18,12,.74) 0%,rgba(5,18,12,.28) 58%,rgba(5,18,12,.08) 100%),linear-gradient(0deg,rgba(4,16,11,.58) 0%,transparent 48%)}
.hero-content{top:50%;width:min(780px,calc(100vw - max(14vw,96px)));max-height:calc(100dvh - 190px);transform:translateY(-43%)}
.hero-lead{max-width:680px}
.desktop-nav a{position:relative;padding:12px 0}.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:5px;height:1px;background:#fff;transition:right .28s ease}.desktop-nav a:hover:after{right:0}
.header-cta,.outline-btn,.journal-banner a,.contact-buttons a,.text-link{transition:color .28s ease,background .28s ease,border-color .28s ease,transform .28s ease,padding .28s ease}
.header-cta span,.outline-btn span,.journal-banner a span,.contact-buttons a span,.text-link span{transition:transform .28s ease}
.header-cta:hover{background:#b94826}.header-cta:hover span,.outline-btn:hover span,.journal-banner a:hover span,.contact-buttons a:hover span,.text-link:hover span{transform:translate(4px,-4px)}
.category-card{transition:transform .35s ease,box-shadow .35s ease}.category-card:before{background:linear-gradient(0deg,rgba(5,23,15,.82),rgba(5,23,15,.03) 72%)}.category-card:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,0);transition:border-color .3s ease}.category-card:hover{z-index:2;transform:translateY(-8px);box-shadow:0 18px 40px rgba(13,41,31,.22)}.category-card:hover:before{background:linear-gradient(0deg,rgba(5,23,15,.9),rgba(5,23,15,.18) 76%)}.category-card:hover:after{border-color:rgba(255,255,255,.6)}
.services-title h3 span,.commitment h2 span,.recruit h2 span{white-space:nowrap}
.services-title h3{font-size:clamp(22px,2.1vw,32px);letter-spacing:-.04em}
.service-grid article{position:relative;gap:18px;padding-top:20px!important;padding-bottom:20px!important;transition:background .3s ease,padding .3s ease,box-shadow .3s ease;overflow:hidden}.service-grid article:after{content:"";position:absolute;left:0;bottom:0;width:0;height:2px;background:var(--orange);transition:width .35s ease}.service-grid article:hover{background:rgba(255,255,255,.75);box-shadow:0 12px 30px rgba(22,32,26,.07)}.service-grid article:hover:after{width:100%}.service-grid article:nth-child(odd):hover{padding-left:16px!important}.service-grid article:nth-child(even):hover{padding-left:46px!important}.service-no{width:24px;flex:0 0 24px;font:italic 13px Georgia,serif!important;color:var(--orange)!important}.service-icon{display:grid;place-items:center;width:46px;height:46px;flex:0 0 46px;border:1px solid rgba(21,58,45,.28);border-radius:50%;color:var(--green)!important;font:400 19px Georgia,serif!important;transition:background .3s ease,color .3s ease,transform .3s ease}.service-grid article:hover .service-icon{background:var(--green);color:#fff!important;transform:rotate(-8deg) scale(1.06)}
.commitment h2{font-size:clamp(34px,3.6vw,54px)}.recruit h2{font-size:clamp(34px,3.3vw,50px)}.commitment h2,.recruit h2{letter-spacing:-.045em}.commitment-photo,.company-visual,.recruit-collage div{transition:filter .45s ease}.commitment:hover .commitment-photo,.company-visual:hover,.recruit-collage div:hover{filter:saturate(1.12) contrast(1.04)}
.text-link:hover{padding-left:10px;padding-right:10px;background:rgba(255,255,255,.55)}.journal-banner a:hover{padding-left:12px;padding-right:12px;background:rgba(255,255,255,.12)}
.company-links a>span:last-child{transition:transform .25s ease}.company-links a:hover>span:last-child{transform:translate(4px,-4px)}
.outline-btn:hover{background:#fff;color:var(--green);border-color:#fff;transform:translateY(-3px)}
.news article{transition:transform .35s ease}.news article:hover{transform:translateY(-8px)}.news-image{background-size:100% auto;transition:background-size .5s ease}.news a:hover .news-image{background-size:108% auto}.news-image>span{transition:background .28s ease,color .28s ease,transform .28s ease}.news a:hover .news-image>span{background:var(--orange);color:#fff;transform:translate(-5px,-5px)}
.brand-list span{transition:background .3s ease,color .3s ease,transform .3s ease}.brand-list span:hover{position:relative;background:var(--green);color:#fff;transform:translateY(-5px)}
.contact-buttons a:hover{padding-left:14px;padding-right:14px;background:rgba(255,255,255,.08)}

/* Accessible content modal */
body.modal-open{overflow:hidden}.modal{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;padding:24px;opacity:0;visibility:hidden;transition:opacity .28s ease,visibility .28s ease}.modal.is-open{opacity:1;visibility:visible}.modal-backdrop{position:absolute;inset:0;background:rgba(4,18,12,.72);backdrop-filter:blur(8px)}.modal-panel{position:relative;width:min(720px,100%);max-height:min(760px,calc(100dvh - 48px));overflow:hidden;background:var(--cream);box-shadow:0 30px 90px rgba(0,0,0,.35);padding:58px 64px 0;transform:translateY(24px) scale(.985);transition:transform .3s ease}.modal.is-open .modal-panel{transform:none}.modal-close{position:absolute;z-index:2;right:22px;top:22px;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:transparent;cursor:pointer;transition:background .25s ease,transform .25s ease}.modal-close:hover{background:var(--green);transform:rotate(90deg)}.modal-close span{position:absolute;left:12px;top:21px;width:18px;height:1px;background:var(--ink)}.modal-close span:first-child{transform:rotate(45deg)}.modal-close span:last-child{transform:rotate(-45deg)}.modal-close:hover span{background:#fff}.modal-kicker{margin:0 0 16px;color:var(--orange);font-size:10px;font-weight:800;letter-spacing:.2em}.modal-panel h2{margin:0;padding-right:40px;font-family:Georgia,"Yu Mincho",serif;font-size:clamp(30px,4vw,48px);font-weight:400;line-height:1.35}.modal-content{max-height:calc(100dvh - 230px);overflow-y:auto;margin:30px -22px 0 0;padding:0 34px 58px 0;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--orange) transparent}.modal-content h3{margin:34px 0 10px;font-size:16px}.modal-content p{margin:0 0 18px;font-size:14px;line-height:2;color:#485149}.modal-content ul{margin:0;padding-left:1.2em;color:#485149}.modal-content li{padding:7px 0;font-size:14px;line-height:1.7}.modal-table{width:100%;border-collapse:collapse;font-size:13px}.modal-table th,.modal-table td{padding:14px 0;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}.modal-table th{width:30%;color:#68736c}

@media(max-width:900px){.hero{height:100vh;height:100svh;height:100dvh;min-height:0}.hero-content{top:48%;width:auto;max-height:calc(100dvh - 170px);transform:translateY(-42%)}.service-grid article:nth-child(even):hover{padding-left:38px!important}.modal-panel{padding:50px 38px 0}}
@media(max-width:560px){.hero{height:100vh;height:100svh;height:100dvh;min-height:0}.hero-image{background-position:74% center}.hero-content{left:24px;right:24px;top:47%;max-height:calc(100dvh - 150px);transform:translateY(-40%)}.hero h1{font-size:clamp(40px,13vw,56px);line-height:1.12}.hero-lead{max-width:340px;margin-top:24px;font-size:11.5px;line-height:1.9;letter-spacing:.035em}.hero-lead br{display:block}.hero-bottom{bottom:max(20px,env(safe-area-inset-bottom));}.services-title h3{font-size:clamp(21px,6.2vw,27px);line-height:1.6}.commitment h2,.recruit h2{font-size:clamp(30px,9.3vw,43px)}.service-grid article:nth-child(even):hover,.service-grid article:nth-child(odd):hover{padding-left:10px!important}.news-image{background-size:cover}.news a:hover .news-image{background-size:cover}.modal{padding:12px}.modal-panel{max-height:calc(100dvh - 24px);padding:44px 24px 0}.modal-panel h2{font-size:30px}.modal-content{max-height:calc(100dvh - 185px);margin-top:24px;padding:0 14px 38px 0}}
@media(max-height:680px){.hero-content{top:49%;max-height:calc(100dvh - 130px)}.hero h1{font-size:clamp(36px,9vh,64px)}.hero-lead{margin-top:16px;line-height:1.7}.hero-bottom{bottom:14px}.hero .eyebrow{margin-bottom:12px}}

/* Spacing and fixed two-line heading refinements */
.section{padding-top:96px;padding-bottom:96px}
.hero-content{top:50%;transform:translateY(-50%);max-height:none}
.hero h1 span,.section-head h2 span,.commitment h2 span,.recruit h2 span,.footer-top h2 span{white-space:nowrap}
.section-head{margin-bottom:52px}
.services-block{margin-top:82px;gap:clamp(48px,7vw,90px)}
.commitment{min-height:620px}.commitment-body{padding-top:76px;padding-bottom:72px}
.commitment-body p:not(.eyebrow){margin-top:26px}.commitment-body .text-link{margin-top:30px}
.journal-banner{min-height:460px;padding-top:68px;padding-bottom:68px}
.company{gap:clamp(48px,6vw,84px)}.company-visual{min-height:510px}
.recruit{min-height:580px}.recruit-copy{padding-top:74px;padding-bottom:74px}.recruit-collage{padding-top:36px;padding-bottom:36px}
.title-row{margin-bottom:44px}.brands .title-row{margin-bottom:44px}
.footer{padding-top:82px}.footer-top{padding-bottom:58px}

@media(max-width:900px){
  .section{padding-top:70px;padding-bottom:70px}
  .hero-content{top:50%;transform:translateY(-50%);max-height:none}
  .section-head{gap:24px;margin-bottom:38px}
  .services-block{margin-top:64px;gap:34px}
  .commitment{min-height:0}.commitment-photo{min-height:360px}.commitment-body{padding-top:62px;padding-bottom:60px}
  .journal-banner{min-height:420px;padding-top:56px;padding-bottom:56px}.journal-banner a{margin-top:32px}
  .company{gap:38px}.company-visual{min-height:440px}
  .recruit{min-height:0}.recruit-copy{padding-top:64px;padding-bottom:60px}.recruit-collage{min-height:430px;padding-bottom:36px}
  .title-row,.brands .title-row{margin-bottom:36px}
  .footer{padding-top:68px}.footer-top{padding-bottom:48px}
}
@media(max-width:560px){
  .section{padding-top:60px;padding-bottom:60px}
  .hero-content{top:50%;transform:translateY(-50%)}
  .hero h1{font-size:clamp(39px,12.5vw,52px)}
  .section-head h2{font-size:clamp(28px,8.7vw,36px);letter-spacing:-.04em}
  .commitment h2,.recruit h2{font-size:clamp(29px,9vw,40px);line-height:1.36}
  .commitment-photo{min-height:300px}.commitment-body{padding-top:52px;padding-bottom:50px}
  .journal-banner{min-height:360px;padding-top:48px;padding-bottom:48px}.journal-banner a{margin-top:26px}
  .company-visual{min-height:350px}
  .recruit-copy{padding-top:54px;padding-bottom:50px}.recruit-collage{min-height:430px;padding-bottom:28px}
  .news article+article{margin-top:16px}
  .brand-list span{padding-top:28px;padding-bottom:28px}
  .footer{padding-top:58px}.footer-top{padding-bottom:42px}.footer-top h2{font-size:clamp(28px,8.7vw,36px);letter-spacing:-.04em}.contact-buttons{margin-top:38px}
}
@media(max-height:680px){.hero-content{top:50%;transform:translateY(-50%);max-height:none}}

/* Full-screen mobile navigation */
@media(max-width:900px){
  body.menu-open{overflow:hidden}
  body.menu-open .site-header{position:fixed;background:transparent;border-color:transparent}
  .site-header .logo{position:relative;z-index:32}
  .mobile-menu{display:block;position:static;margin-left:auto}
  .mobile-menu summary{position:relative;z-index:33;width:48px;height:48px;margin-right:-4px;display:block;border:1px solid rgba(255,255,255,.72);border-radius:50%;background:rgba(13,41,31,.78);box-shadow:0 5px 20px rgba(0,0,0,.24);cursor:pointer;transition:background .25s ease,border-color .25s ease,transform .25s ease}
  .mobile-menu summary:hover{background:var(--orange);border-color:var(--orange);transform:scale(1.05)}
  .mobile-menu summary i{position:absolute;left:13px;top:50%;width:22px;height:2px;background:#fff;border-radius:2px;transition:transform .3s ease,width .3s ease}
  .mobile-menu summary i:first-child{transform:translateY(-5px)}
  .mobile-menu summary i:last-child{transform:translateY(5px)}
  .mobile-menu[open] summary{background:var(--orange);border-color:var(--orange)}
  .mobile-menu[open] summary i:first-child{transform:rotate(45deg)}
  .mobile-menu[open] summary i:last-child{transform:rotate(-45deg)}
  .mobile-menu nav{position:fixed;z-index:31;inset:0;width:100vw;height:100vh;height:100svh;height:100dvh;min-height:100%;padding:calc(86px + env(safe-area-inset-top)) 28px calc(34px + env(safe-area-inset-bottom));display:flex;flex-direction:column;justify-content:center;overflow-y:auto;overscroll-behavior:contain;background:linear-gradient(145deg,#153a2d 0%,#071d15 100%);opacity:1;visibility:visible;pointer-events:auto}
  .mobile-menu:not([open]) nav{display:flex;opacity:0;visibility:hidden;pointer-events:none}
  .mobile-menu nav:before{content:"MENU";display:block;margin:0 0 22px;padding-left:4px;color:#90a399;font:700 10px/1 Georgia,serif;letter-spacing:.3em}
  .mobile-menu nav a{position:relative;padding:18px 4px;border-bottom:1px solid rgba(255,255,255,.18);font:400 clamp(20px,6vw,30px)/1.25 Georgia,serif;letter-spacing:.08em;transition:color .25s ease,padding .25s ease,border-color .25s ease}
  .mobile-menu nav a:after{content:"↗";position:absolute;right:4px;top:50%;font-size:18px;transform:translateY(-50%);transition:transform .25s ease}
  .mobile-menu nav a:hover{padding-left:14px;color:#f09a78;border-color:var(--orange)}
  .mobile-menu nav a:hover:after{transform:translate(4px,-70%)}
}

/* Keep the hero copy centered after the reveal state is applied. */
.hero .hero-content.reveal,
.hero .hero-content.reveal.is-visible{
  top:50%;
  transform:translateY(-50%);
}

/* Compact, consistent section rhythm */
.section{
  padding-top:72px;
  padding-bottom:72px;
}
.section-head{margin-bottom:42px}
.services-block{margin-top:60px}
.title-row,.brands .title-row{margin-bottom:36px}

@media(max-width:900px){
  .section{padding-top:56px;padding-bottom:56px}
  .section-head{margin-bottom:32px}
  .services-block{margin-top:48px}
  .title-row,.brands .title-row{margin-bottom:32px}
}
@media(max-width:560px){
  .section{padding-top:48px;padding-bottom:48px}
  .section-head{margin-bottom:28px}
  .services-block{margin-top:42px}
  .title-row,.brands .title-row{margin-bottom:28px}
}

/* Image framing for the outdoor photo collection */
.category-shelter{background-position:50% 62%}
.recruit-collage div:first-child{background-position:50% 35%}
@media(max-width:900px){
  .commitment-photo{background-position:50% 36%}
  .company-visual{background-position:50% 55%}
  .journal-banner{background-position:72% center}
}
