:root{color-scheme:light;--ink:#171d31;--blue:#244bdf;--muted:#575e6f;--line:#e0e3eb;--paper:#fff;--tint:#f1f4ff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid #df592b;outline-offset:5px}.wrap{width:min(1200px,calc(100% - 80px));margin-inline:auto}header{height:108px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-weight:750;font-size:20px;letter-spacing:-.6px;display:inline-flex;align-items:center;gap:12px}.mark{width:35px;height:35px;border-radius:11px;background:var(--blue);color:white;text-align:center;font-size:27px;line-height:32px}.nav-contact{font-size:15px;font-weight:bold;display:flex;gap:22px}.hero{display:grid;grid-template-columns:1.08fr 1fr;gap:44px;align-items:center;padding-block:78px 65px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:2px;margin:0 0 24px;color:var(--blue)}h1{font-size:clamp(42px,5.2vw,70px);letter-spacing:-3px;line-height:1.12;margin:0 0 24px;white-space:nowrap}h1 span{color:var(--blue)}h1 small{font-size:.56em;color:var(--muted);letter-spacing:-1px}h2{font-size:38px;line-height:1.2;letter-spacing:-1.4px;font-weight:650;margin:0 0 24px}.hero h2{font-size:32px;max-width:440px;letter-spacing:-.9px}.intro{color:var(--muted);font-size:18px;max-width:420px;margin:0 0 29px}.button{display:inline-flex;justify-content:center;align-items:center;gap:33px;padding:15px 23px;border-radius:8px;background:var(--blue);color:#fff;font-weight:700;min-height:54px;transition:background .18s,transform .18s}.button:hover{background:#1839b3;transform:translateY(-2px)}.small{font-size:13px;color:var(--muted);margin:15px 0 0}.hero-image{position:relative;margin:0;background:#dfeafd;border-radius:20px;overflow:hidden;aspect-ratio:1/1.06}.hero-image img{width:100%;height:100%;object-fit:cover;display:block}.hero-image figcaption{position:absolute;bottom:23px;left:25px;font-size:11px;letter-spacing:2px;font-weight:700;background:#ffffffde;padding:7px 11px;border-radius:4px}.facts{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:23px;font-size:14px;color:var(--muted)}.facts span:before{content:'✳';color:var(--blue);margin-right:12px}.about{display:grid;grid-template-columns:1fr 1.8fr;gap:50px;padding-block:100px}.about .eyebrow{padding-top:9px}.about h2{font-size:46px}.about p:not(.eyebrow){max-width:630px;color:var(--muted);font-size:18px}.ideas{padding-block:0 85px}.section-heading{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:28px}.section-heading h2{margin-bottom:0}.section-heading>p{color:var(--muted);font-size:14px}.idea-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.idea{padding:28px;background:var(--tint);border-radius:12px}.idea:nth-child(2){background:#fff3d7}.idea:nth-child(3){background:#ffebe7}.idea .number{font-size:14px;font-weight:bold;display:block;margin-bottom:47px;color:var(--muted)}h3{font-size:22px;letter-spacing:-.6px;line-height:1.3;margin:0 0 14px}.idea p{color:#4e5363;margin:0;font-size:16px}.faq{padding-block:55px 85px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.8fr;gap:50px}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;padding:20px 28px 20px 0;list-style:none;font-weight:600;position:relative}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:0;font-size:22px;font-weight:400;top:13px}details[open] summary:after{content:'−'}details p{margin:0;padding:0 30px 23px 0;color:var(--muted)}.contact{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:40px;background:var(--blue);color:#fff;border-radius:18px;padding:55px 55px;margin-bottom:50px}.contact .eyebrow{color:#e0e7ff}.contact h2{font-size:46px}.contact p{max-width:440px}.contact .button{background:white;color:var(--blue)}.contact .button:hover{background:#edf1ff}.contact-note{font-size:14px;color:#e0e7ff}.contact-action{justify-self:end}.email{display:block;color:white;text-decoration:underline;text-underline-offset:4px;font-size:14px;margin-top:16px;overflow-wrap:anywhere}footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px;padding-block:27px}footer p,footer>a:last-child{font-size:13px;color:var(--muted)}.skip{position:fixed;left:12px;top:-100px;padding:12px;background:white;z-index:20}.skip:focus{top:12px}@media(min-width:1500px){.hero{padding-top:100px}}@media(max-width:900px){.wrap{width:calc(100% - 40px)}.hero{gap:24px;padding-top:45px}h1{font-size:43px;letter-spacing:-2px}.hero h2{font-size:27px}.hero-image{aspect-ratio:1/1.3}.about,.faq{gap:25px;grid-template-columns:1fr 1.5fr}.idea{padding:22px}.contact{padding:36px}.contact h2{font-size:38px}.section-heading{display:block}}@media(max-width:650px){header{height:80px}.brand{font-size:17px}.nav-contact{font-size:14px;gap:8px}.hero{grid-template-columns:1fr;padding-block:36px 32px;gap:30px}.eyebrow{margin-bottom:18px}h1{font-size:clamp(38px,10.7vw,65px);letter-spacing:-2px}.hero h2{font-size:29px;max-width:360px}.intro{font-size:17px}.hero-image{aspect-ratio:1.25}.hero-image figcaption{bottom:16px;left:16px;font-size:10px}.facts{flex-wrap:wrap;justify-content:flex-start;gap:10px 20px;font-size:13px;padding-block:18px}.about{grid-template-columns:1fr;gap:7px;padding-block:58px}.about h2{font-size:37px}.about p:not(.eyebrow){font-size:17px}.section-heading h2,h2{font-size:31px}.idea-grid{grid-template-columns:1fr}.idea .number{margin-bottom:25px}.ideas{padding-bottom:55px}.faq{grid-template-columns:1fr;gap:0;padding-block:35px 55px}.contact{grid-template-columns:1fr;padding:30px 25px;gap:12px;border-radius:12px}.contact h2{font-size:36px}.contact-action{justify-self:start}.contact .button{gap:25px}footer{flex-wrap:wrap;gap:10px}footer p{margin:0}footer>a:last-child{margin-left:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Tableware: restrained editorial treatment, shared structural components. */
body.tableware{--ink:#292023;--blue:#712837;--muted:#62595c;--line:#e8e1e3;--tint:#f5f1f2}
.tableware .mark{border-radius:50%;font-family:Georgia,serif}
.tableware .hero{grid-template-columns:1fr 1.15fr;gap:65px;padding-block:62px}
.tableware .hero h2,.tableware .about h2,.tableware .section-heading h2,.tableware .faq h2,.tableware .contact h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-1px}
.tableware .hero h2{font-size:39px;line-height:1.15}
.tableware .hero-image{border-radius:2px;aspect-ratio:1/1.08;background:#712837}
.tableware .hero-image figcaption{background:#fff;color:#712837;border-radius:0}
.tableware .button{border-radius:2px}.tableware .button:hover{background:#54202b}
.tableware .idea{background:transparent!important;border-top:1px solid #b9a0a7;border-radius:0;padding:27px 10px 20px 0}
.tableware .idea h3{font-family:Georgia,serif;font-size:26px;font-weight:400}
.tableware .facts span:before{content:'—'}
.tableware .contact{border-radius:2px}.tableware .contact .button:hover{background:#f2e9ec}
@media(max-width:900px){.tableware .hero{gap:25px}.tableware .hero h2{font-size:32px}}
@media(max-width:650px){.tableware .hero{grid-template-columns:1fr;padding-block:36px;gap:28px}.tableware .hero-image{aspect-ratio:1.15}.tableware .hero h2{font-size:34px}.tableware .idea .number{margin-bottom:20px}}

/* Hospitality: warm paper, green accents, open editorial layout. */
body.hospitality{--ink:#213c32;--blue:#36594b;--muted:#56675e;--line:#d8dfd6;--paper:#faf9f3;--tint:#eef0e6}
.hospitality h1 span{color:inherit}.hospitality .mark{border-radius:50%;font-family:Georgia,serif}
.hospitality .hero h2,.hospitality .about h2,.hospitality .section-heading h2,.hospitality .faq h2,.hospitality .contact h2{font-family:Georgia,serif;font-weight:400;letter-spacing:-1px}
.hospitality .hero h2{font-size:42px}.hospitality .hero-image{border-radius:140px 140px 8px 8px;background:#e4e9da}
.hospitality .button{border-radius:30px}.hospitality .button:hover{background:#233f33}.hospitality .contact .button:hover{background:#e8efdf}
.hospitality .idea-grid{grid-template-columns:repeat(2,1fr);gap:0 40px}.hospitality .idea{border-radius:0;background:transparent;border-top:1px solid var(--line);padding:26px 0 32px}.hospitality .idea .number{margin-bottom:18px}.hospitality .idea h3{font-family:Georgia,serif;font-weight:400;font-size:27px}
.hospitality .contact{border-radius:6px}.hospitality .contact-note,.hospitality .contact .eyebrow{color:#e4eedf}
@media(max-width:900px){.hospitality .hero h2{font-size:34px}.hospitality .hero-image{border-radius:90px 90px 6px 6px}}
@media(max-width:650px){.hospitality .hero h2{font-size:35px}.hospitality .hero-image{border-radius:80px 80px 6px 6px}.hospitality .idea-grid{grid-template-columns:1fr}}

/* Fuel supply: industrial blue, amber accents, direct typography. */
body.fuel{--ink:#1e303b;--blue:#274455;--muted:#56646c;--line:#dce2e6;--tint:#eff3f5}
.fuel h1{font-size:clamp(30px,4.4vw,56px);letter-spacing:-2px}.fuel .mark{border-radius:3px;background:#274455}
.fuel .hero{grid-template-columns:1.1fr 1fr;gap:36px}.fuel .hero h2{font-size:34px;max-width:470px;line-height:1.18}
.fuel .hero-image{border-radius:3px;aspect-ratio:1/1.05;background:#e3e8eb}.fuel .hero-image figcaption{background:#ffcf79;color:#253b48;border-radius:0}
.fuel .button{border-radius:3px}.fuel .button:hover{background:#152f3e}.fuel .idea{border-radius:3px;background:#f0f3f5;border-top:3px solid #d59a35}.fuel .idea:nth-child(2){background:#faf4e9}.fuel .idea:nth-child(3){background:#edf1f3}
.fuel .contact{border-radius:3px}.fuel .contact h2{font-size:38px;overflow-wrap:anywhere}.fuel .contact .button:hover{background:#fff1d7}
@media(max-width:900px){.fuel .hero{gap:22px}.fuel .hero h2{font-size:29px}.fuel .contact h2{font-size:32px}}
@media(max-width:650px){.fuel .hero{grid-template-columns:1fr}.fuel h1{font-size:clamp(30px,8.2vw,50px)}.fuel .hero-image{aspect-ratio:1.25}.fuel .hero h2{font-size:30px}.fuel .contact h2{font-size:29px}.fuel header .mark{display:none}}

button.button{font:inherit;font-weight:700;border:0;cursor:pointer}button:focus-visible{outline:3px solid #df592b;outline-offset:5px}

.contact-dialog{width:min(440px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;margin:auto;padding:28px;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);box-shadow:0 18px 70px #0003}
.contact-dialog::backdrop{background:#14212bb3}.contact-dialog h2{font-size:28px;margin-bottom:14px}.contact-dialog p{color:var(--muted);margin:0 0 20px}.contact-check{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid var(--line);border-radius:6px;cursor:pointer}.contact-check input{width:22px;height:22px;margin:0;accent-color:var(--blue)}.contact-check input:focus-visible{outline:3px solid #df592b;outline-offset:3px}.contact-dialog-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;margin-top:24px}.contact-cancel{border:0;background:transparent;color:var(--ink);font:inherit;cursor:pointer;padding:12px}.contact-dialog .button{gap:16px}.contact-dialog .button:disabled{opacity:.45;cursor:not-allowed;transform:none}
