*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f3f2ed;color:#111;font-family:"Helvetica Neue",Arial,sans-serif;font-size:14px}a{color:inherit;text-decoration:none}.header{height:92px;display:flex;align-items:center;padding:0 3vw;border-bottom:1px solid #c8c7c2;background:#f3f2ed;position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:16px;letter-spacing:.32em;font-weight:600}.brand img{width:44px;height:55px}.brand small{display:block;font-size:9px;letter-spacing:.5em;margin-top:5px}.header nav{margin-left:auto;display:flex;gap:44px;font:12px/1.2 monospace}.header nav a:first-child{border-bottom:1px solid;padding-bottom:5px}.cart{margin-left:50px;border:0;background:none;font:12px monospace}.hero{display:grid;grid-template-columns:minmax(340px,24%) 1fr;gap:0 56px;min-height:580px;padding:0 0 0 3vw}.hero-copy{padding:70px 30px 50px 28px;display:flex;flex-direction:column;align-items:flex-start}.hero h1{font-size:48px;line-height:.98;letter-spacing:-.045em;margin:0 0 30px}.hero p{font:12px/1.6 monospace;letter-spacing:.02em}.hero-copy a,.testing a,.about a{margin-top:auto;font:12px monospace;border-bottom:1px solid;padding-bottom:7px}.hero-copy a b{font-size:18px;margin-left:24px}.photo{background:linear-gradient(135deg,#deddd7,#f6f5f1 46%,#c7c8c5);display:flex;align-items:center;justify-content:center;text-align:center;color:#666;font:11px/1.7 monospace;letter-spacing:.08em;position:relative;overflow:hidden}.photo:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 85px,rgba(255,255,255,.22) 86px 88px);opacity:.45}.photo span{position:relative;padding:18px;border:1px solid rgba(17,17,17,.15);background:rgba(243,242,237,.6)}.catalog{border-top:1px solid #c8c7c2;border-bottom:1px solid #c8c7c2;padding:0 3vw 72px}.catalog-head{min-height:150px;display:flex;align-items:flex-end;justify-content:space-between;padding:36px 0 28px;border-bottom:1px solid #c8c7c2;margin-bottom:28px}.catalog-head small{font:10px monospace;letter-spacing:.05em;color:#62635f}.catalog-head h2{font-size:38px;line-height:1;margin:13px 0 0;letter-spacing:-.04em}.catalog-head>p{font:11px/1.65 monospace;text-align:right;margin:0}.catalog-head>p span{color:#777}.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 22px}.product{display:block;min-width:0}.product .photo{aspect-ratio:1/1;background:linear-gradient(145deg,#e5e5e0,#f8f7f3 48%,#cfd0cd);transition:filter .18s ease}.product:hover .photo{filter:brightness(.97)}.product .photo:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:#c8c7c2}.meta{padding:14px 0 0}.meta small{display:block;font:10px monospace;color:#686965;margin-bottom:9px}.meta h3{font:600 20px/1.05 "Helvetica Neue",Arial,sans-serif;letter-spacing:-.025em;margin:0 0 7px}.meta p{font:11px monospace;color:#555;margin:0 0 18px;min-height:14px}.meta div{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #d0cfca;padding-top:11px;font:11px monospace}.meta strong{font-weight:500}.meta div span{opacity:0;transform:translateX(-5px);transition:opacity .16s ease,transform .16s ease}.product:hover .meta div span{opacity:1;transform:none}
.testing{display:grid;grid-template-columns:24% 26% 50%;min-height:430px;border-bottom:1px solid #c8c7c2}.testing-copy{padding:48px 3vw;display:flex;flex-direction:column}.testing h2{font-size:27px;letter-spacing:-.035em;margin:0 0 26px}.testing-copy p{font:11px/1.7 monospace;max-width:290px}.package{border-left:1px solid #c8c7c2}.coa{padding:38px 4vw;border-left:1px solid #c8c7c2;font:11px monospace}.coa-head{display:flex;justify-content:space-between;border-bottom:1px solid #aaa;padding-bottom:14px}.coa dl{width:55%;float:left;margin-top:20px}.coa dl div{display:flex;border-bottom:1px solid #d2d1cc;padding:6px 0}.coa dt{width:48%}.coa dd{margin:0}.chart{margin:20px 0 20px 60%;height:160px;border-left:1px solid #aaa;border-bottom:1px solid #aaa;display:flex;align-items:center;justify-content:center;text-align:center;color:#777}.coa a{clear:both;display:block;margin-top:20px}.brand-photo{height:440px;border-bottom:1px solid #c8c7c2}.about{padding:90px 9vw 110px;max-width:900px}.about small{font:11px monospace}.about h2{font-size:46px;line-height:1.02;letter-spacing:-.045em;margin:28px 0}.about p{max-width:600px;font:13px/1.8 monospace;color:#444}.about a{display:inline-block;margin-top:36px}.faq{padding:60px 9vw 90px;border-top:1px solid #c8c7c2}.faq h2{font-size:30px}.faq details{max-width:850px;border-top:1px solid #c8c7c2;padding:20px 0;font:12px monospace}.faq details:last-child{border-bottom:1px solid #c8c7c2}.faq summary{cursor:pointer}.faq p{line-height:1.7;color:#555}footer{display:grid;grid-template-columns:2fr repeat(3,1fr) 1.5fr;gap:40px;padding:55px 3vw;border-top:1px solid #c8c7c2;background:#eeede8;font:10px/1.8 monospace}footer>div:not(.brand){display:flex;flex-direction:column}footer b{margin-bottom:10px}footer p{margin:0;text-align:right}@media(max-width:900px){.header nav{display:none}.header{height:76px}.cart{margin-left:auto}.hero{grid-template-columns:1fr;gap:0;padding:0}.hero-copy{min-height:330px;padding:50px 7vw}.hero-photo{min-height:420px}.products{grid-template-columns:repeat(2,1fr)}.product.featured,.product.wide{grid-column:span 2}.testing{grid-template-columns:1fr}.testing-copy{min-height:300px}.package{min-height:360px;border-left:0;border-top:1px solid #c8c7c2}.coa{border-left:0;border-top:1px solid #c8c7c2}.brand-photo{height:330px}footer{grid-template-columns:1fr 1fr}footer .brand{grid-column:1/-1}footer p{text-align:left}}@media(max-width:560px){.brand span{font-size:12px}.hero h1{font-size:42px}.products{grid-template-columns:1fr}.product.featured,.product.wide{grid-column:span 1}.product.featured .photo,.product.wide .photo,.product .photo{aspect-ratio:4/5}.coa dl{width:100%;float:none}.chart{margin:25px 0;border-left:0}.about h2{font-size:36px}footer{grid-template-columns:1fr 1fr}}

@media(max-width:900px){.catalog{padding:0 5vw 60px}.catalog-head{min-height:125px}.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 18px}.product .photo{aspect-ratio:1/1}}
@media(max-width:560px){.catalog{padding:0 5vw 50px}.catalog-head{align-items:flex-start;padding:30px 0 22px;min-height:0}.catalog-head h2{font-size:32px}.catalog-head>p{font-size:9px}.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 12px}.meta h3{font-size:15px}.meta p{font-size:9px;margin-bottom:13px}.meta div{font-size:9px}.meta div span{display:none}.product .photo{aspect-ratio:1/1}}
/* Expandable catalog dossiers */
.product{position:relative;transition:opacity .22s ease}.product-summary{display:block;width:100%;padding:0;border:0;background:none;color:inherit;text-align:left;font:inherit;cursor:pointer}.product-summary .meta div span{opacity:.58;transform:none}.product:hover .product-summary .meta div span{opacity:1}.products.has-open .product:not(.is-open){opacity:.38}.product.is-open{grid-column:1/-1;opacity:1}.product.is-open .product-summary{display:none}.product-dossier{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(330px,.92fr);max-height:0;opacity:0;overflow:hidden;background:#ecebe6;border-top:1px solid #111;border-bottom:1px solid #111;transition:opacity .2s ease,max-height .35s cubic-bezier(.22,.7,.2,1)}.product.is-open .product-dossier{max-height:900px;opacity:1}.dossier-image{min-height:510px;border-right:1px solid #bdbcb7;background:linear-gradient(145deg,#d5d6d3,#f6f5f1 52%,#babdbb)}.dossier-info{position:relative;padding:42px 44px 34px;display:flex;flex-direction:column;min-height:510px}.dossier-close{position:absolute;top:24px;right:26px;border:0;background:none;font:10px monospace;cursor:pointer;padding:8px}.dossier-info>small{font:10px monospace;color:#686965;margin:4px 0 26px}.dossier-info h3{font-size:38px;letter-spacing:-.045em;line-height:.95;margin:0 0 8px}.dossier-strength{font:12px monospace;margin:0 0 32px;color:#555}.dossier-description{font:12px/1.7 monospace;max-width:520px;color:#41423f;margin:0 0 30px}.dossier-info dl{margin:0 0 34px;border-top:1px solid #c4c3be}.dossier-info dl div{display:grid;grid-template-columns:150px 1fr;padding:10px 0;border-bottom:1px solid #c4c3be;font:10px monospace}.dossier-info dt{color:#747570}.dossier-info dd{margin:0}.dossier-actions{display:flex;gap:10px;margin-top:auto}.quantity{display:grid;grid-template-columns:34px 34px 34px;height:42px;border:1px solid #111}.quantity button{border:0;background:none;font-size:16px;cursor:pointer}.quantity span{display:flex;align-items:center;justify-content:center;font:11px monospace;border-left:1px solid #bbb;border-right:1px solid #bbb}.add-cart{height:42px;flex:1;background:#111;color:#f3f2ed;border:1px solid #111;font:10px monospace;letter-spacing:.03em;cursor:pointer}.add-cart:hover{background:#292a28}.batch-link{display:inline-block;margin-top:18px;font:10px monospace;border-bottom:1px solid;width:max-content;padding-bottom:4px}.research-note{font:8px/1.5 monospace;color:#777;margin:24px 0 0}.product:focus{outline:none}.product:focus-visible{outline:1px solid #111;outline-offset:5px}
@media(max-width:900px){.product.is-open{grid-column:1/-1}.product-dossier{grid-template-columns:1fr}.dossier-image{min-height:380px;border-right:0;border-bottom:1px solid #bdbcb7}.dossier-info{min-height:470px}.products.has-open .product:not(.is-open){opacity:.28}}
@media(max-width:560px){.product.is-open{grid-column:1/-1}.product.is-open .product-dossier{max-height:1100px}.dossier-image{min-height:310px}.dossier-info{padding:34px 24px 26px;min-height:500px}.dossier-info h3{font-size:30px}.dossier-description{font-size:10px}.dossier-info dl div{grid-template-columns:110px 1fr;font-size:9px}.dossier-actions{flex-direction:column}.quantity{width:102px}.add-cart{flex:none;width:100%}}

/* Row drawer catalog interaction — fixed product grid */
.product{position:relative;opacity:1!important;grid-column:auto!important}
.product-summary{display:block!important}
.product-dossier{display:none!important}
.products.has-open .product:not(.is-selected){opacity:1!important}
.product.is-selected .photo:after{height:2px;background:#111}
.product.is-selected .meta div{border-top-color:#111}
.product.is-selected .meta div span{opacity:1;transform:none;font-weight:600}
.row-drawer{grid-column:1/-1;background:#ecebe6;border-top:1px solid #111;border-bottom:1px solid #111;margin-top:-16px}
.drawer-content{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);min-height:0}
.row-drawer .dossier-image{min-height:470px;border-right:1px solid #bdbcb7}
.row-drawer .dossier-info{min-height:470px}
.row-drawer .dossier-close{display:block}
@media(max-width:900px) and (min-width:561px){.drawer-content{grid-template-columns:1fr 1fr}.row-drawer .dossier-image{min-height:390px}.row-drawer .dossier-info{min-height:390px;padding:34px 30px}}
@media(max-width:560px){.row-drawer{grid-column:1/-1;margin-top:-14px}.drawer-content{grid-template-columns:1fr}.row-drawer .dossier-image{min-height:280px;border-right:0;border-bottom:1px solid #bdbcb7}.row-drawer .dossier-info{min-height:460px;padding:32px 22px 24px}}

/* Liquid-connected row drawer */
.products{--drawer-speed:560ms;--drawer-ease:cubic-bezier(.16,1,.3,1)}
.product{transition:filter .38s ease,opacity .38s ease,transform .38s ease}
.products.has-open .product:not(.is-selected){opacity:.58!important;filter:brightness(.84) saturate(.55);transform:scale(.992)}
.product.is-selected{z-index:3}
.product.is-selected .photo{filter:brightness(1.015)}
.product.is-selected .photo:after{height:1px;background:#111}
.product.is-selected .meta{position:relative}
.product.is-selected .meta:after{content:"";position:absolute;left:0;right:0;bottom:-29px;height:30px;border-left:1px solid #111;border-right:1px solid #111;background:#ecebe6;z-index:4;transform-origin:top;animation:connectorGrow var(--drawer-speed) var(--drawer-ease) both}
@keyframes connectorGrow{0%{transform:scaleY(0);opacity:0}35%{opacity:1}100%{transform:scaleY(1);opacity:1}}
.row-drawer{position:relative;display:grid;grid-template-rows:0fr;overflow:hidden;min-height:0!important;margin-top:-16px;opacity:0;transform-origin:top;background:#ecebe6;border:0;box-shadow:inset 0 0 0 1px #111;animation:none;transition:grid-template-rows var(--drawer-speed) var(--drawer-ease),opacity calc(var(--drawer-speed) * .55) ease}
.row-drawer.is-entering,.row-drawer.is-open{opacity:1}
.row-drawer.is-open{grid-template-rows:1fr}
.drawer-content{min-height:0;overflow:hidden}
.row-drawer:before{content:"";position:absolute;left:var(--connector-left,0);top:0;width:var(--connector-width,33.333%);height:2px;background:#ecebe6;z-index:6;transition:left .38s var(--drawer-ease),width .38s var(--drawer-ease)}
.row-drawer .dossier-image,.row-drawer .dossier-info{opacity:0;transform:translateY(8px);transition:opacity .38s ease .12s,transform .48s var(--drawer-ease) .12s}
.row-drawer.is-open .dossier-image,.row-drawer.is-open .dossier-info{opacity:1;transform:none}
.product.is-selected .meta div span{letter-spacing:.02em}
@media(max-width:560px){.products.has-open .product:not(.is-selected){opacity:.62!important;filter:brightness(.88) saturate(.65);transform:none}.product.is-selected .meta:after{bottom:-15px;height:16px}.row-drawer{margin-top:-1px}.row-drawer:before{display:none}}
@media(prefers-reduced-motion:reduce){.product,.row-drawer,.row-drawer .dossier-image,.row-drawer .dossier-info,.product.is-selected .meta:after{transition:none!important;animation:none!important}}

/* Vertical product-strip catalog */
.products{display:flex!important;flex-direction:column;gap:10px!important;--drawer-speed:620ms}
.product{width:100%;border:1px solid #c8c7c2;background:#f3f2ed;transition:filter .4s ease,opacity .4s ease,transform .4s ease,border-color .28s ease!important}
.product-summary{height:148px;display:grid!important;grid-template-columns:minmax(0,1fr);align-items:stretch;overflow:hidden}
.product-summary .meta{padding:0 22px;display:grid;grid-template-columns:74px minmax(180px,1.25fr) minmax(150px,.8fr) minmax(180px,.7fr);align-items:center;gap:22px;height:100%;position:relative}
.product-summary .meta small{margin:0;font-size:10px;grid-column:1}
.product-summary .meta h3{margin:0;font-size:23px;grid-column:2}
.product-summary .meta p{margin:0;min-height:0;font-size:10px;grid-column:3;color:#555}
.product-summary .meta>div{grid-column:4;border:0;padding:0;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:16px;justify-content:stretch}
.product-summary .meta>div strong{font-size:12px}
.product-summary .meta>div span{justify-self:end;opacity:1;width:27px;height:27px;min-width:27px;display:flex;align-items:center;justify-content:center;border:1px solid #111;font:16px/1 monospace;font-weight:400;letter-spacing:0;white-space:nowrap;color:#111;transition:background .16s ease,color .16s ease,border-color .16s ease}
.product-summary:hover .meta>div span{background:#111;color:#f3f2ed}
.product:hover{border-color:#92938f}
.products.has-open .product:not(.is-selected){opacity:.55!important;filter:brightness(.87) saturate(.55);transform:none!important}
.product.is-selected{border-color:#111;border-bottom-color:transparent;background:#ecebe6}
.product.is-selected .meta:after{bottom:-31px!important;height:32px!important;left:-23px!important;right:-23px!important;border-left:1px solid #111;border-right:1px solid #111;background:#ecebe6}
.product.is-selected .meta>div span{background:#111;color:#f3f2ed;border-color:#111}
.row-drawer{width:100%;margin-top:-11px!important;box-shadow:inset 0 -1px 0 #111,inset 1px 0 0 #111,inset -1px 0 0 #111!important;background:#ecebe6}
.row-drawer:before{display:none!important}
.row-drawer .dossier-image{min-height:390px}
.row-drawer .dossier-info{min-height:390px;padding:38px 44px 30px}
.row-drawer .dossier-info h3{font-size:34px}

@media(max-width:900px){
 .products{gap:8px!important}
 .product-summary{height:132px;grid-template-columns:minmax(0,1fr)}
 .product-summary .meta{grid-template-columns:52px minmax(90px,1fr) minmax(70px,auto) minmax(60px,auto);gap:10px;padding:0 14px}
 .product-summary .meta h3{font-size:19px;overflow-wrap:anywhere}
 .product-summary .meta>div{gap:10px}
 .product-summary .meta>div span{width:24px;height:24px;min-width:24px;font-size:14px}
 .product.is-selected .meta:after{left:-17px!important;right:-17px!important}
 .drawer-content{grid-template-columns:.85fr 1.15fr!important}
}
@media(max-width:680px){
 .catalog-head{margin-bottom:16px}
 .product-summary{height:112px;grid-template-columns:minmax(0,1fr)}
 .product-summary .meta{grid-template-columns:46px minmax(0,1fr) auto;grid-template-rows:1fr 1fr;gap:0 10px;padding:13px 14px}
 .product-summary .meta small{grid-column:1;grid-row:1/3;align-self:center;font-size:8px}
 .product-summary .meta h3{grid-column:2;grid-row:1;align-self:end;font-size:17px;margin-bottom:3px;overflow-wrap:anywhere}
 .product-summary .meta p{grid-column:2;grid-row:2;align-self:start;font-size:8px}
 .product-summary .meta>div{grid-column:3;grid-row:1/3;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:6px}
 .product-summary .meta>div span{width:20px;height:20px;min-width:20px;font-size:12px}
 .product.is-selected .meta:after{left:-15px!important;right:-15px!important;bottom:-14px!important;height:15px!important}
 .row-drawer{margin-top:-9px!important}
 .drawer-content{grid-template-columns:1fr!important}
 .row-drawer .dossier-image{min-height:240px}
 .row-drawer .dossier-info{min-height:440px;padding:30px 22px 24px}
}
@media(max-width:430px){
 .product-summary{grid-template-columns:minmax(0,1fr);height:104px}
 .product-summary .meta{grid-template-columns:38px minmax(0,1fr) auto;padding:11px 10px;gap:0 7px}
 .product-summary .meta h3{font-size:15px;overflow-wrap:anywhere}
 .product-summary .meta>div{gap:6px}
 .product-summary .meta>div span{width:20px;height:20px;min-width:20px;font-size:12px}
 .product.is-selected .meta:after{left:-11px!important;right:-11px!important}
}

/* Brochure / direct-contact mode */
.contact-top{margin-left:50px;font:11px/1.2 monospace;border-bottom:1px solid;padding-bottom:5px}.dossier-actions{display:block;margin-top:auto}.inquiry-link{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:0 15px;background:#111;color:#f3f2ed;border:1px solid #111;font:10px monospace;letter-spacing:.04em;width:100%;transition:background .18s ease}.inquiry-link:hover{background:#292a28}.contact{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:82px 9vw 90px;border-top:1px solid #c8c7c2;background:#e9e8e3}.contact small{grid-column:1/-1;font:10px monospace;letter-spacing:.06em}.contact h2{font-size:42px;line-height:1;letter-spacing:-.045em;margin:0}.contact>p{font:12px/1.8 monospace;max-width:520px;margin:0}.contact-actions{grid-column:2;display:flex;gap:12px}.contact-actions a{flex:1;border:1px solid #111;padding:16px 18px;font:10px monospace;display:flex;justify-content:space-between}.contact-actions a:hover{background:#111;color:#f3f2ed}.contact-note{grid-column:2;font-size:8px!important;color:#777}.meta strong{font-size:9px;letter-spacing:.04em}.cart{display:none}@media(max-width:900px){.contact-top{display:none}.contact{grid-template-columns:1fr}.contact small,.contact-actions,.contact-note{grid-column:1}.contact-actions{flex-direction:column}}

/* Approved Arcanum lockup */
.brand{
  display:flex;
  align-items:center;
  gap:0;
  letter-spacing:0;
  font-weight:400;
}
.brand .brand-lockup{
  display:block;
  width:220px;
  height:auto;
  object-fit:contain;
}
footer .brand .brand-lockup{width:205px}
@media(max-width:560px){
  .brand .brand-lockup{width:178px}
  footer .brand .brand-lockup{width:178px}
}

/* Transparent approved header/footer logo */
.brand .brand-lockup {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* Final approved Arcanum logo */
.brand .brand-lockup{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* Approved narrow Arcanum lockup */
.brand .brand-lockup,
img[src="arcanum-logo-narrow.png"]{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* Expanded FAQ */
.faq-item{
  border-top:1px solid var(--line, #c9c7c0);
  margin:0;
}
.faq-item:last-child{
  border-bottom:1px solid var(--line, #c9c7c0);
}
.faq-item summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:24px;
  padding:13px 0;
  font:inherit;
}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{
  content:"+";
  font-family:var(--mono, monospace);
  font-size:18px;
  font-weight:400;
}
.faq-item[open] summary::after{content:"−"}
.faq-answer{
  max-width:760px;
  padding:0 0 14px;
  line-height:1.55;
}
.faq-answer p{margin:0}

/* Legal pages */
.legal-page{
  width:min(900px, calc(100% - 48px));
  margin:0 auto;
  padding:120px 0 140px;
}
.legal-kicker,.legal-updated{
  font-family:var(--mono, monospace);
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:12px;
}
.legal-page h1{
  font-size:clamp(44px,7vw,84px);
  line-height:.95;
  letter-spacing:-.045em;
  margin:18px 0 20px;
}
.legal-page>p{
  max-width:760px;
  line-height:1.7;
}
.legal-page h2{
  border-top:1px solid var(--line,#c9c7c0);
  padding-top:24px;
  margin:52px 0 14px;
  font-size:17px;
  letter-spacing:.02em;
}
.footer-legal{
  display:flex;
  gap:20px;
  padding-top:24px;
}
@media(max-width:640px){
  .legal-page{
    width:min(100% - 32px,900px);
    padding:88px 0 100px;
  }
}

/* COA source tag */
.coa-source{
  margin:14px 0 0;
  font:10px monospace;
  letter-spacing:.05em;
  color:#8a8b86;
}

/* Mobile nav toggle + panel */
.nav-toggle{
  display:none;
  width:32px;
  height:32px;
  padding:0;
  margin-left:20px;
  border:0;
  background:none;
  cursor:pointer;
  flex-direction:column;
  align-items:flex-end;
  justify-content:center;
  gap:6px;
}
.nav-toggle span{
  display:block;
  width:100%;
  height:1.5px;
  background:#111;
  transition:transform .22s ease,opacity .22s ease,width .22s ease;
}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}

.mobile-nav{
  display:none;
  position:fixed;
  left:0;
  right:0;
  top:76px;
  z-index:9;
  background:#f3f2ed;
  border-bottom:1px solid #c8c7c2;
  box-shadow:0 12px 24px rgba(17,17,17,.08);
  max-height:0;
  overflow:hidden;
  flex-direction:column;
  transition:max-height .3s cubic-bezier(.22,.7,.2,1);
}
.mobile-nav a{
  display:block;
  padding:18px 6vw;
  font:12px monospace;
  letter-spacing:.08em;
  border-top:1px solid #d8d7d2;
}
.mobile-nav a:first-child{border-top:0}
.mobile-nav-contact{
  background:#111;
  color:#f3f2ed!important;
  border-top:0!important;
}
@media(max-width:900px){
  .nav-toggle{display:flex}
  .mobile-nav{display:flex}
  .mobile-nav.is-open{max-height:400px}
  body.nav-open{overflow:hidden}
}

/* Real photography fill (replaces placeholder gradient/stripe treatment) */
.photo.has-image{background:none}
.photo.has-image:before{display:none}
.photo.has-image img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* Drawer/dossier product image: never crop — always show the full vial, letterboxed and centered */
.dossier-image.has-image img{
  position:static;
  width:auto;
  height:auto;
  max-width:86%;
  max-height:86%;
  object-fit:contain;
  display:block;
}

/* "How it works" steps (about section) */
.steps{
  margin-top:40px;
}
.step{
  display:grid;
  grid-template-columns:56px 1fr;
  gap:20px;
  border-top:1px solid #c8c7c2;
  padding:26px 0;
}
.step:last-child{
  border-bottom:1px solid #c8c7c2;
}
.step>span{
  font:12px monospace;
  color:#777;
  padding-top:2px;
}
.step h3{
  margin:0 0 8px;
  font-size:18px;
  letter-spacing:-.02em;
}
.step p{
  margin:0;
  max-width:520px;
  font:13px/1.7 monospace;
  color:#444;
}
@media(max-width:560px){
  .step{
    grid-template-columns:34px 1fr;
    gap:14px;
    padding:20px 0;
  }
  .step h3{
    font-size:16px;
  }
}
.steps-note{
  margin:28px 0 0;
  max-width:520px;
  font:12px/1.6 monospace;
  color:#666;
}

/* Catalogue rows: name + details only (no index code / strength column) */
.product-summary .meta{grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto!important}
.product-summary .meta h3{grid-column:1!important;grid-row:1!important;align-self:center!important;margin:0!important}
.product-summary .meta>div{grid-column:2!important;grid-row:1!important}
@media(max-width:680px){.product-summary .meta>div{flex-direction:row!important;align-items:center!important;gap:10px!important}}
.legal-page>p a{border-bottom:1px solid}

/* Mobile optimization pass */
@media(max-width:900px){
 .nav-toggle{margin-left:auto!important;width:44px!important;height:44px!important;padding:0 6px!important;margin-right:-6px!important;align-items:stretch!important}
 .hero-photo{min-height:0!important;height:auto!important;aspect-ratio:3/2}
 .hero-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
 .product-summary{height:100px!important}
 footer a{padding:6px 0}
}
@media(max-width:680px){
 .product-summary{height:76px!important}
 .row-drawer .dossier-info{min-height:0!important}
 .row-drawer .dossier-actions{margin-top:28px}
 .about{padding:64px 6vw 72px}
 .about h2{margin:20px 0 24px}
 .faq{padding-top:56px!important;padding-bottom:56px!important}
 .contact{gap:24px;padding:64px 6vw 72px}
 .contact-actions a{padding:18px}
 .hero-copy a,.about a{padding-top:10px}
}
@media(max-width:430px){.product-summary{height:68px!important}}
@media(max-width:680px){
 .row-drawer .dossier-close{position:static!important;align-self:flex-end;margin:0 0 14px;padding:6px 0}
 .row-drawer .dossier-actions{margin-top:28px!important}
}


/* Footer (clean layout) */
.site-footer{display:block!important;padding:64px 3vw 28px!important;background:#eeede8;border-top:1px solid #c8c7c2;font:11px/1.6 monospace}
.site-footer .f-top{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:40px;padding-bottom:56px}
.site-footer .f-brand{display:block;width:fit-content}
.site-footer .f-brand img{width:190px;height:auto;display:block}
.site-footer .f-col{display:flex;flex-direction:column;align-items:flex-start}
.site-footer b{font-weight:500;font-size:10px;letter-spacing:.08em;color:#777;margin:0 0 12px}
.site-footer a{color:#111;padding:4px 0;transition:opacity .18s ease}
.site-footer a:hover,.site-footer a:active{opacity:.55}
.site-footer .f-contact span{color:#777}
.site-footer .f-bottom{display:flex!important;flex-direction:row!important;justify-content:space-between;gap:24px;border-top:1px solid #c8c7c2;padding-top:22px;font-size:10px;color:#777;letter-spacing:.04em}
@media(max-width:900px){
  .site-footer{padding:48px 6vw calc(28px + env(safe-area-inset-bottom,0px))!important}
  .site-footer .f-top{grid-template-columns:1fr 1fr;gap:36px 24px;padding-bottom:32px}
  .site-footer .f-brand{grid-column:1/-1}
  .site-footer .f-brand img{width:156px}
  .site-footer .f-contact{grid-column:1/-1;border-top:1px solid #c8c7c2;padding-top:28px}
  .site-footer a{padding:8px 0}
  .site-footer .f-bottom{flex-direction:column!important;gap:6px;padding-top:20px}
}

/* Hero lead + note */
.hero .hero-lead{font:400 17px/1.5 "Helvetica Neue",Arial,sans-serif;letter-spacing:-.012em;color:#2a2a28;max-width:330px;margin:0 0 16px}
.hero .hero-note{font:11px/1.6 monospace;letter-spacing:.06em;color:#5f5f5b;margin:0 0 36px}
@media(max-width:900px){.hero .hero-lead{font-size:16px;max-width:340px}}

/* Catalogue row tags */
.products .product-summary .meta{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) auto!important;grid-template-rows:auto!important}
.products .product-summary .meta h3{grid-column:1!important;grid-row:1!important}
.products .product-summary .meta .row-tag{grid-column:2!important;grid-row:1!important;align-self:center;margin:0!important;min-height:0!important;font:11px/1.3 monospace!important;letter-spacing:.06em;color:#5f5f5b!important}
.products .product-summary .meta>div{grid-column:3!important;grid-row:1!important}
@media(max-width:680px){
  .product-summary{height:80px!important}
  .products .product-summary .meta{grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto auto!important;align-content:center;row-gap:5px!important}
  .products .product-summary .meta h3{align-self:end!important}
  .products .product-summary .meta .row-tag{grid-column:1!important;grid-row:2!important;align-self:start;font-size:10px!important}
  .products .product-summary .meta>div{grid-column:2!important;grid-row:1/3!important}
}
@media(max-width:430px){.product-summary{height:76px!important}}

/* Readability: larger, darker small text */
.research-note{font-size:10px!important;color:#5f5f5b!important}
.dossier-info dl div{font-size:11px!important}
.dossier-info dt{color:#5f5f5b}
.steps-note{color:#4a4a47!important;font-size:12.5px!important}
.step>span{color:#5f5f5b!important}
.site-footer b,.site-footer .f-bottom,.site-footer .f-contact span,.mobile-nav-note,.legal-updated,.legal-kicker{color:#5f5f5b!important}
.catalog-head small,.about small{color:#4a4a47}
@media(max-width:560px){
  .dossier-description{font-size:12px!important;line-height:1.7!important}
  .faq details{font-size:12px!important}
  .site-footer .f-bottom{font-size:10.5px}
}
