@font-face{font-family:Playfair;src:url('assets/playfair.woff2') format('woff2');font-display:swap;font-weight:400}
@font-face{font-family:SourceSans;src:url('assets/source-sans.woff2') format('woff2');font-display:swap;font-weight:400}
@font-face{font-family:Montserrat;src:url('assets/montserrat.woff2') format('woff2');font-display:swap;font-weight:100 900}
:root{--ink:#202823;--forest:#171e19;--deep:#101610;--paper:#f7f6f1;--muted:#616961;--line:#d8d9cd;--accent:#bba67e;--teal:#d6c6a4;--serif:Playfair,Georgia,serif;--sans:SourceSans,Arial,sans-serif}
body{font-size:18px;-webkit-font-smoothing:antialiased}.wrap{width:min(1260px,calc(100% - 112px))}h1,h2{line-height:1.16;letter-spacing:-.038em}h1{font-size:clamp(3.4rem,6.1vw,6.1rem)}h2{font-size:clamp(2.5rem,4.1vw,4rem)}.eyebrow{font:500 .73rem/1.7 Montserrat,Arial,sans-serif;letter-spacing:.17em;margin-bottom:28px}.eyebrow:before{content:'';display:inline-block;width:29px;height:1px;background:var(--accent);vertical-align:middle;margin-right:14px}.site-header{background:var(--forest);color:#eeeae0;border-bottom:1px solid #394135}.header-inner{min-height:100px}.brand-name{font:500 1.23rem/1.25 Montserrat,Arial,sans-serif;letter-spacing:.2em}.brand-name small{font:400 .63rem/1.4 Montserrat,Arial,sans-serif;letter-spacing:.48em;margin-top:8px;color:#c7b58f}.monogram{display:none}.nav-links{gap:36px}.nav-links a{font-size:.92rem;color:#dce2d4}.nav-links .nav-contact{padding:12px 24px;border-color:#898b71;margin-left:10px}.nav-links .nav-contact:hover{background:#313c2b}.menu-toggle{color:white;border-color:#657058}.hero{position:relative;isolation:isolate}.hero-layout{display:block;min-height:680px;position:relative;z-index:1}.hero-copy{padding:95px 0 100px;max-width:1060px;position:relative;z-index:2}.hero h1{max-width:1030px;margin-bottom:30px}.hero h1 em{font-style:normal;color:#ddcfb5}.hero .lead{font-size:1.14rem;max-width:555px;line-height:1.8;color:#d2d9ca}.hero-visual{position:absolute;inset:0;border:0;margin:0;min-height:0;z-index:-1;pointer-events:none}.hero-visual img{object-position:center;filter:none}.hero-visual:after{background:linear-gradient(90deg,rgba(11,17,12,.67),rgba(11,17,12,.10) 75%),linear-gradient(0deg,rgba(13,22,14,.62),transparent 45%)}.image-caption{display:none}.hero-tail{border-top:1px solid #58614b;background:rgba(17,25,17,.6);position:relative;z-index:1}.hero-tail .wrap{padding-top:22px;padding-bottom:22px;font:400 .73rem/1.7 Montserrat,Arial,sans-serif;letter-spacing:.09em;color:#bac9af}.hero-tail strong{color:#dbdacd}.actions{gap:28px;margin-top:35px}.button{font:500 .76rem/1.5 Montserrat,Arial,sans-serif;letter-spacing:.055em;min-height:54px;padding:15px 23px;gap:28px}.button.light{background:#d7c7a6;color:#25301f;border-color:#d7c7a6}.button.light:hover{background:#ebe1cc}.button.ghost{border-color:#919d85}.button:hover{background:#34452c}.text-link{font-size:.95rem}.section{padding:108px 0}.section-head{gap:100px;align-items:center;margin-bottom:55px}.intro-text{font-size:1.23rem;line-height:1.7;max-width:550px;color:#4e5b48}.corporate-detail{font-size:1rem;line-height:1.8;color:var(--muted);display:block;margin-top:18px}.operation-grid{display:block;margin-top:35px}.operation,.operation+.operation{display:grid;grid-template-columns:120px 1fr 1.2fr;gap:32px;padding:32px 0;border-left:0;align-items:start}.operation+.operation{border-top:1px solid var(--line)}.operation .number{font:400 .68rem/1.7 Montserrat,Arial,sans-serif;letter-spacing:.07em;color:#7b836a;margin:8px 0 0}.operation h3{font:400 1.7rem/1.4 var(--serif);margin:0;letter-spacing:-.02em}.operation p{font-size:1rem;line-height:1.75;max-width:490px}.roles{background:var(--forest);color:#f0f0e3}.roles .eyebrow{color:#c5b38f}.roles h2{color:#ddd0b6}.roles-grid{gap:105px;grid-template-columns:.9fr 1.1fr}.roles-intro p{color:#c6d0be;max-width:410px}.role-card{border-color:#657054;padding:29px 0}.role-card:last-child{border-color:#657054}.role-label{font:400 .69rem/1.7 Montserrat,Arial,sans-serif;letter-spacing:.13em;color:#c4b28a;margin-bottom:18px}.role-card h3{font-size:1.8rem}.role-card p{color:#c4ceba;font-size:1rem;line-height:1.75}.waste-layout{gap:110px;grid-template-columns:.9fr 1.1fr}.waste-aside{position:static}.waste-aside>p:not(.eyebrow){max-width:410px}.check-row{gap:20px;padding:23px 0}.check-index{font:400 .75rem/1.7 Montserrat,Arial,sans-serif;color:#8b8665;padding-top:5px}.check-row h3{font-size:1.15rem;font-weight:400;margin-bottom:10px}.check-row p{font-size:1rem}.notice{background:transparent;border-left:2px solid #a99a72;padding:10px 0 10px 22px;font-size:.95rem;color:#59654e;max-width:400px}.notice strong{font-weight:400;color:#263520}.process{background:#e8ece1;color:var(--ink)}.process .eyebrow{color:#647350}.process .section-head p,.step p{color:#59684c;font-size:1rem}.steps{gap:55px}.step{border-color:#a9b596;padding-top:25px}.step .number{font:400 .72rem/1.6 Montserrat,Arial,sans-serif;color:#75825d;margin-bottom:30px}.step h3{font-size:1.8rem;line-height:1.4}.faq-grid{gap:110px;grid-template-columns:.8fr 1.2fr}details{padding:23px 0}summary{font-weight:400;font-size:1.1rem}details p{font-size:1rem}.contact{background:var(--paper);padding-top:90px}.contact-layout{gap:105px;grid-template-columns:.85fr 1.15fr}.contact-email{font-size:clamp(1rem,1.6vw,1.2rem);margin:10px 0 25px;text-decoration:none}.contact-email:hover{text-decoration:underline}.contact-info{margin-top:20px;padding-top:27px;border-color:var(--line)}.contact-info strong{font:400 1.6rem var(--serif);margin-bottom:12px}.contact-info p{font-size:.95rem}.form-grid{gap:23px}label{font-size:.9rem;font-weight:400}label span{color:#728165}input,textarea,select{background:#fbfcf7;border-color:#b8c2aa;font-size:1rem}.form-note{font-size:.88rem;color:#637657}.form-actions .button{font-size:.68rem;letter-spacing:.025em;padding:14px 17px;gap:12px}.form-status{font-size:.95rem}.prepared{background:#eff2e9}.prepared h3{font-size:1.1rem}.prepared textarea{font:15px/1.6 var(--sans)}.site-footer{padding:70px 0 26px}.footer-top{padding-bottom:45px;align-items:start;gap:50px}.footer-top .brand-name{font-size:1.6rem}.footer-note{max-width:455px;font-size:.93rem;color:#b4c4a8}.footer-base{border-color:#354a2d;color:#aebfa1;font-size:.8rem}.legal-main h1{font-size:3.5rem}.legal-main h2{font-family:var(--serif);font-size:1.9rem;line-height:1.4}.review-bar{background:#e3d8bf;color:#3a3b29;padding:8px 20px;font:400 .68rem/1.7 Montserrat,Arial,sans-serif;letter-spacing:.02em}
@media(min-width:1500px){.hero-visual{margin-right:0}.hero-layout{min-height:750px}.hero-copy{padding-top:118px;padding-bottom:125px}}
@media(max-width:1100px){.wrap{width:calc(100% - 80px)}.nav-links{gap:24px}.hero-copy{padding:86px 0 90px}.hero-layout{min-height:640px}.hero h1{font-size:5rem}.section-head,.roles-grid,.waste-layout,.faq-grid,.contact-layout{gap:60px}.operation,.operation+.operation{grid-template-columns:90px 1fr 1.2fr;gap:28px}.form-actions .button{width:100%;font-size:.75rem}.steps{gap:35px}}
@media(max-width:850px){.wrap{width:calc(100% - 48px)}.header-inner{min-height:85px}.brand-name{font-size:1.06rem}.nav-links{gap:20px}.nav-links a{font-size:.87rem}.nav-links .nav-contact{padding:10px 14px;margin-left:0}.hero-layout{min-height:620px}.hero h1{font-size:4.6rem}.hero .lead{max-width:490px}.hero-copy{padding:75px 0 85px}.section{padding:80px 0}.section-head,.roles-grid,.waste-layout,.faq-grid{grid-template-columns:1fr;gap:28px}.section-head{margin-bottom:38px}.intro-text{max-width:700px}.roles-intro p{max-width:610px}.operation,.operation+.operation{grid-template-columns:80px 1fr 1.15fr;gap:23px}.operation h3{font-size:1.5rem}.waste-aside>p:not(.eyebrow),.notice{max-width:650px}.contact-layout{grid-template-columns:.8fr 1.2fr;gap:35px}.form-grid{grid-template-columns:1fr;gap:18px}.contact-email{font-size:1rem}.contact-info{margin-top:15px}.faq-grid h2{max-width:none}}
@media(max-width:800px){.site-header .header-inner{padding:18px 0}.nav-links{padding:17px 0 3px;border-color:#405034}.nav-links .nav-contact{padding:0;border:0}.hero-layout{display:block}.hero-visual{height:auto;min-height:0;margin:0}.hero-visual img{height:100%}.hero-tail .wrap{display:flex;flex-wrap:nowrap}.hero-tail span:last-child{display:block;text-align:right;max-width:150px}.hero-tail strong{max-width:450px}.footer-top{flex-direction:row}}
@media(max-width:560px){body{font-size:17px}.wrap{width:calc(100% - 42px)}.brand-name{font-size:1.05rem}.brand-name small{font-size:.6rem}.hero-layout{min-height:610px}.hero-copy{padding:62px 0 65px}.hero h1{font-size:clamp(2.8rem,10.8vw,3.8rem);line-height:1.18;letter-spacing:-.042em;margin-bottom:28px}.hero .eyebrow{font-size:.64rem;letter-spacing:.1em;max-width:340px;line-height:1.8;margin-bottom:25px}.hero .eyebrow:before{width:20px;margin-right:9px}.hero .lead{font-size:1.1rem;line-height:1.7}.hero-visual img{object-position:58% center}.hero-visual:after{background:linear-gradient(90deg,rgba(11,17,12,.79),rgba(11,17,12,.4)),linear-gradient(0deg,rgba(13,22,14,.65),transparent)}.hero .actions{gap:22px;margin-top:28px}.button{font-size:.72rem}.hero-tail .wrap{font-size:.63rem;letter-spacing:.04em;padding:18px 0;gap:20px}.hero-tail strong{max-width:235px}.hero-tail span:last-child{max-width:100px}.section{padding:66px 0}h2{font-size:2.6rem;line-height:1.2}.eyebrow{font-size:.68rem;margin-bottom:23px}.intro-text{font-size:1.16rem}.corporate-detail{font-size:1rem}.section-head{gap:13px}.operation,.operation+.operation{grid-template-columns:1fr;padding:26px 0;gap:12px}.operation .number{margin:0}.operation h3{font-size:1.65rem;margin:0}.operation p{font-size:1rem}.roles-grid,.waste-layout,.faq-grid{gap:26px}.role-card h3{font-size:1.65rem}.role-label{font-size:.66rem}.steps{gap:30px}.step .number{margin-bottom:18px}.step h3{font-size:1.7rem;margin-bottom:13px}.contact-layout{grid-template-columns:1fr;gap:26px}.contact-email{font-size:1.1rem;margin-bottom:8px}.contact-info{margin-top:25px}.contact-info p{max-width:350px}.form-grid{grid-template-columns:1fr 1fr;gap:18px 14px}.form-grid .field:nth-child(1),.form-grid .field:nth-child(2){grid-column:1/-1}.form-note{font-size:.88rem}.form-actions .button{font-size:.7rem}.footer-top{display:block;padding-bottom:34px}.footer-top .brand{margin-bottom:28px}.footer-top .brand-name{font-size:1.4rem}.site-footer{padding-top:52px}.footer-note{font-size:.9rem}.footer-base{font-size:.76rem}.review-bar{font-size:.62rem;padding:8px 13px;letter-spacing:0}.legal-main h1{font-size:2.8rem}}
@media(max-width:360px){.wrap{width:calc(100% - 32px)}.hero h1{font-size:2.55rem}.form-grid{grid-template-columns:1fr}.hero-tail span:last-child{display:none}}
