@font-face{font-family:'Bodoni Moda';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/bodoni-moda-400-normal.woff2') format('woff2');}
@font-face{font-family:'Bodoni Moda';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/bodoni-moda-500-normal.woff2') format('woff2');}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:400;font-display:swap;src:url('../fonts/cormorant-garamond-400-italic.woff2') format('woff2');}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/cormorant-garamond-400-normal.woff2') format('woff2');}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/cormorant-garamond-500-normal.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/inter-400-normal.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/inter-500-normal.woff2') format('woff2');}
@font-face{font-family:'Libre Caslon Text';font-style:italic;font-weight:400;font-display:swap;src:url('../fonts/libre-caslon-text-400-italic.woff2') format('woff2');}
@font-face{font-family:'Libre Caslon Text';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/libre-caslon-text-400-normal.woff2') format('woff2');}:root{--white:#fff;--ink:#000;--text:#111;--meta:#6b6b6b;--hairline:#e5e5e5;--tile:#f5f5f5;
--f-mast:'Bodoni Moda','Playfair Display',Didot,serif;--f-head:'Cormorant Garamond',Garamond,serif;--f-body:'Libre Caslon Text',Georgia,serif;--f-ui:'Inter',system-ui,sans-serif;--max:1200px}
*,*::before,*::after{box-sizing:border-box;border-radius:0}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--white);color:var(--text);font:400 14px/1.6 var(--f-ui)}
img{max-width:100%;height:auto;display:block}
a{color:var(--ink);text-decoration:none}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:1px solid var(--ink);outline-offset:3px}
.skip-link,.screen-reader-text{position:absolute;left:-9999px}
.skip-link:focus{left:1rem;top:1rem;background:var(--white);padding:.5rem;z-index:99}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}
.wrap-narrow{max-width:720px;margin:0 auto;padding:0 24px}
.center{text-align:center}
.label,.primary-nav a,.menu a{font:500 10.5px/1.4 var(--f-ui);text-transform:uppercase;letter-spacing:.14em;color:var(--ink);margin:0}
.meta{color:var(--meta)}
.text-link{border-bottom:1px solid var(--ink);padding-bottom:2px}
.rule{border:0;border-top:1px solid var(--hairline);margin:72px 0}
.btn,.button,button.single_add_to_cart_button,.woocommerce button.button,.woocommerce a.button,input[type=submit]{display:inline-block;background:var(--ink);color:var(--white);border:1px solid var(--ink);padding:14px 28px;font:500 11px/1 var(--f-ui);text-transform:uppercase;letter-spacing:.14em;cursor:pointer}
.btn--outline{background:var(--white);color:var(--ink)}
.icon-btn{background:none;border:0;padding:6px;color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;gap:4px}
/* header */
.announce{background:var(--ink);text-align:center;padding:8px}
.announce a{color:var(--white);font:500 10px/1 var(--f-ui);letter-spacing:.16em;text-transform:uppercase}
.header-inner{display:flex;justify-content:space-between;align-items:center;padding-top:14px}
.header-icons{display:flex;gap:8px}
.hoh-cart-count{font:500 10px var(--f-ui)}
.masthead{font:400 clamp(34px,8.6vw,108px)/1 var(--f-mast);text-transform:uppercase;letter-spacing:-.02em;text-align:center;margin:8px 0 18px;white-space:nowrap}
.masthead-medium .masthead{font-size:clamp(30px,6vw,76px)}
.masthead a{color:var(--ink)}
.primary-nav{border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}
.primary-nav ul{list-style:none;margin:0;padding:14px 0;display:flex;justify-content:center;flex-wrap:wrap;gap:8px 32px}
.menu-toggle{visibility:hidden}
.search-panel{border-bottom:1px solid var(--hairline);padding:20px 0}
.search-form{display:flex;gap:12px;max-width:520px;margin:0 auto}
input[type=email],input[type=text],input[type=search],input[type=tel],input[type=number],input[type=password],textarea,select{border:0;border-bottom:1px solid var(--ink);background:transparent;padding:10px 0;font:400 15px var(--f-ui);color:var(--text);width:100%;border-radius:0}
.mobile-menu{position:fixed;inset:0;background:var(--white);z-index:100;padding:24px;overflow:auto}
.mobile-menu ul{list-style:none;padding:0;margin:40px 0;text-align:center}
.mobile-menu li{padding:14px 0;border-bottom:1px solid var(--hairline)}
.menu-close{font-size:28px;position:absolute;right:16px;top:10px}
.masthead--small{font-size:28px}
@media (max-width:900px){.primary-nav{display:none}.menu-toggle{visibility:visible}}
/* images */
.hoh-img{width:100%;object-fit:cover;background:var(--tile)}
.js img.hoh-img{opacity:0;transition:opacity .3s,transform .3s}
.js img.hoh-img.is-loaded{opacity:1}
.img-link{display:block;overflow:hidden}
.img-link:hover img{transform:scale(1.02)}
.hoh-img--empty{display:block;aspect-ratio:4/5}
.hoh-img--empty.size-hoh-square{aspect-ratio:1}.hoh-img--empty.size-hoh-wide{aspect-ratio:16/9}.hoh-img--empty.size-hoh-cover{aspect-ratio:4/5}
@media (prefers-reduced-motion:reduce){*{transition:none!important}.img-link:hover img{transform:none}}
/* sections */
.section-title{font:400 clamp(28px,4vw,44px)/1.1 var(--f-head);text-transform:uppercase;letter-spacing:.04em;text-align:center;margin:0 0 48px;color:var(--ink)}
.section-title--small{font-size:26px;margin-bottom:32px}
.section-title--h1{font-size:clamp(36px,5vw,60px);margin:56px 0 20px}
.card-title{font:400 22px/1.2 var(--f-head);margin:6px 0;color:var(--ink)}
.story-card .label,.product-card .label{margin-top:16px}
.story-card--center{text-align:center}
.story-card--center .card-title{font-size:19px}
/* cover */
.cover{text-align:center;padding-top:32px}
.cover-img img,.cover-img .hoh-img--empty{aspect-ratio:3/2;max-height:82vh;width:100%;object-fit:cover}
.cover .label{margin-top:28px}
.cover-title{font:400 clamp(32px,5vw,62px)/1.08 var(--f-head);max-width:860px;margin:14px auto 18px;color:var(--ink)}
.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:80px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.has-grey-tile .tile{background:var(--tile)}
.tile img{aspect-ratio:4/5;object-fit:contain;padding:8%}
.price{font:400 14px var(--f-ui);color:var(--text);margin:4px 0}
.product-card{text-align:center}
.shop-edit .center,.journal .center{margin-top:48px}
/* feature */
.feature{position:relative;display:grid;grid-template-columns:7fr 5fr;align-items:center;margin-bottom:80px}
.feature-img{grid-column:1/2;grid-row:1}
.feature-box{grid-column:1/3;grid-row:1;justify-self:end;width:48%;background:var(--white);padding:48px;text-align:center;position:relative}
.feature-title{font:400 clamp(26px,3vw,38px)/1.15 var(--f-head);margin:14px 0 20px}
.feature-box .meta{margin-top:18px}
/* stagger */
.stagger{display:grid;grid-template-columns:repeat(3,1fr);gap:56px 32px;align-items:start}
.stagger > :nth-child(3n+2){margin-top:80px}
.stagger > :nth-child(3n+3){margin-top:32px}
.stagger > :nth-child(odd) .hoh-img{aspect-ratio:4/5}
.stagger > :nth-child(even) .hoh-img{aspect-ratio:1}
/* join */
.join{text-align:center;padding:24px 0 80px}
.underline-form,.join-form form{display:flex;gap:16px;max-width:460px;margin:24px auto 0;align-items:end}
/* footer */
.site-footer{border-top:1px solid var(--hairline);margin-top:40px;padding:64px 0 40px}
.footer-cols{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}
.footer-cols ul{list-style:none;padding:0;margin:16px 0 0}
.footer-cols li{margin:8px 0}
.footer-cols li a{font-size:13px;color:var(--text)}
.footer-base{text-align:center;margin-top:64px;border-top:1px solid var(--hairline);padding-top:40px}
.footer-mark{font:400 28px var(--f-mast);text-transform:uppercase;margin:0 0 12px}
.footer-base .label{margin:8px 0}
/* archive */
.archive-head{text-align:center;margin-bottom:56px}
.archive-intro{max-width:620px;margin:0 auto;color:var(--meta);font:400 19px/1.5 var(--f-head)}
.filter-row{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 28px;margin-top:28px}
.filter-row a.is-active,.filter-row a:hover{border-bottom:1px solid var(--ink)}
.pagination{text-align:center;margin:64px 0}
.pagination .nav-links{display:flex;gap:16px;justify-content:center;margin-top:20px}
.search-inline{max-width:460px;margin:24px auto}
.shop-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:56px 32px;margin-bottom:56px}
@media (max-width:900px){
.tiles{grid-template-columns:repeat(2,1fr)}
.grid-3,.stagger,.shop-grid,.footer-cols{grid-template-columns:1fr}
.stagger > *{margin-top:0!important}
.feature{grid-template-columns:1fr}
.feature-box{grid-column:1;grid-row:auto;width:88%;margin:-60px auto 0;padding:28px;justify-self:center}
.footer-cols{grid-template-columns:repeat(2,1fr)}
}
.article-head{text-align:center;padding:56px 24px 40px}
.article-title{font:400 clamp(34px,5vw,58px)/1.08 var(--f-head);margin:16px 0;color:var(--ink)}
.dek{font:400 21px/1.45 var(--f-head);color:var(--text);max-width:600px;margin:0 auto 20px}
.breadcrumbs{margin-bottom:20px}
.article-hero{margin:0 auto 56px}
.article-hero img{aspect-ratio:16/9;object-fit:cover}
.article-body{display:grid;grid-template-columns:minmax(0,680px);justify-content:center;gap:64px}
.article-body.has-panel{grid-template-columns:minmax(0,680px) 260px}
.entry{font:400 18.5px/1.75 var(--f-body);color:var(--text)}
.entry a{border-bottom:1px solid var(--ink)}
.entry h2{font:500 32px/1.2 var(--f-head);margin:2em 0 .5em;color:var(--ink)}
.entry h3{font:500 24px/1.25 var(--f-head);margin:1.6em 0 .4em}
.entry img{margin:2em 0}
.entry figcaption,.wp-element-caption{font:400 12px var(--f-ui);color:var(--meta);margin-top:-1.4em;margin-bottom:2em}
.entry blockquote,.wp-block-pullquote{font:italic 400 30px/1.3 var(--f-head);color:var(--ink);border:0;margin:1.5em 0;padding:0}
@media (min-width:1200px){.entry blockquote{margin-left:-180px;width:420px;float:left;padding-right:32px}}
.entry table,.hair-table{width:100%;border-collapse:collapse;font:400 14px var(--f-ui)}
.entry td,.entry th,.hair-table td,.hair-table th{border-bottom:1px solid var(--hairline);padding:12px 8px;text-align:left}
.entry iframe{width:100%}
.in-short{border:1px solid var(--hairline);padding:24px 28px;margin:0 0 2em}
.in-short p:last-child{margin:8px 0 0;font:400 20px/1.5 var(--f-head)}
.toc{border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);padding:14px 0;margin-bottom:2em}
.toc ol{font:400 14px/1.8 var(--f-ui);padding-left:20px}
.toc summary,.transcript summary,.faq summary{cursor:pointer;list-style:none}
.transcript{border-top:1px solid var(--hairline);padding-top:16px}
.shop-story{position:sticky;top:24px;align-self:start;text-align:center;padding:24px;background:var(--white);box-shadow:0 8px 30px rgba(0,0,0,.06)}
.shop-story .tile{margin:14px 0}
.article-end{margin-top:56px}
.author-box{display:flex;gap:20px;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);padding:28px 0;margin:24px 0}
.monogram{font:400 40px/1 var(--f-mast);width:64px;height:64px;border:1px solid var(--ink);display:flex;align-items:center;justify-content:center;flex:none}
.medical-note{font-size:13px}
.related{margin-top:24px}
.h-card{display:grid;grid-template-columns:96px 1fr;gap:16px;align-items:center}
.h-card .card-title{font-size:18px}
/* faq */
.faq details{border-bottom:1px solid var(--hairline);padding:18px 0}
.faq summary{font:400 21px var(--f-head);display:flex;justify-content:space-between}
.faq summary::after{content:'+';font-family:var(--f-ui)}
.faq details[open] summary::after{content:'\2212'}
@media (max-width:900px){.article-body.has-panel{grid-template-columns:1fr}.shop-story{position:static;margin:2em 0}}
/* product sales page */
.sales-page{padding-top:40px}
.product-top{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.product-summary{position:sticky;top:24px}
.product-title{font-size:clamp(32px,4vw,48px)}
.price--large{font-size:20px;margin:12px 0 16px}
.product-summary form.cart{margin:24px 0 8px;display:flex;gap:12px}
.product-summary .single_add_to_cart_button{flex:1}
.quantity input{width:64px;text-align:center}
.sp-section{max-width:820px;margin:88px auto 0}
.sp-outcome{font-size:26px!important}
.numbered{font:400 20px/1.5 var(--f-head);padding-left:28px}
.numbered li{border-bottom:1px solid var(--hairline);padding:12px 0}
.steps{list-style:none;counter-reset:s;display:grid;grid-template-columns:repeat(3,1fr);gap:32px;padding:0}
.steps li{counter-increment:s;text-align:center;font:400 19px/1.4 var(--f-head)}
.steps li::before{content:counter(s);display:block;font:400 48px var(--f-mast);margin-bottom:8px}
.sp-two{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.hair-list,.x-list{list-style:none;padding:0;font:400 19px/1.4 var(--f-head)}
.hair-list li,.x-list li{border-bottom:1px solid var(--hairline);padding:12px 0}
.x-list li::before{content:'\00D7';margin-right:14px;font-family:var(--f-ui)}
.about-maker{display:flex;gap:24px;align-items:center;font:400 20px/1.5 var(--f-head)}
.commentlist{list-style:none;padding:0}
.commentlist .description{font:italic 400 22px/1.4 var(--f-head)}
.sticky-bag{display:none}
.hoh-etsy{margin-top:12px}
.hoh-trust{margin-top:16px;color:var(--meta)}
@media (max-width:900px){.product-top,.sp-two,.steps{grid-template-columns:1fr}.product-summary{position:static}
.sticky-bag{display:flex;position:fixed;left:0;right:0;bottom:0;background:var(--white);border-top:1px solid var(--hairline);padding:10px 16px;justify-content:space-between;align-items:center;z-index:50}
.sticky-bag .card-title{font-size:16px}}
/* woo */
.woocommerce-message,.woocommerce-info,.woocommerce-error{border:1px solid var(--hairline);padding:16px;list-style:none;font-size:14px}
.shop_table{width:100%;border-collapse:collapse}.shop_table td,.shop_table th{border-bottom:1px solid var(--hairline);padding:14px 8px;text-align:left}
.woocommerce-MyAccount-navigation ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:20px;border-bottom:1px solid var(--hairline);padding-bottom:14px}
.woocommerce-MyAccount-navigation a{font:500 10.5px var(--f-ui);text-transform:uppercase;letter-spacing:.14em}
.wc-main{padding-top:24px}
/* plugins */
.wpcf7 input:not([type=submit]),.wpcf7 textarea,.mc4wp-form input[type=email],.sib-form input{border:0;border-bottom:1px solid var(--ink)}
.wpconsent-banner,#wpconsent-root{background:var(--white)!important;color:var(--text)!important;border-top:1px solid var(--ink)!important;border-radius:0!important;box-shadow:none!important}
/* Prompts 5 to 7: tools, pages, landing */
.hoh-placeholder{border:1px dashed var(--ink);padding:16px 20px;margin:16px 0;background:var(--white)}
.hoh-placeholder p{margin:0 0 4px;font:400 14px/1.5 var(--f-ui)}
.hoh-ph{display:block;background:var(--tile);aspect-ratio:4/5;width:100%}
.updated-badge{border:1px solid var(--ink);padding:2px 6px}
.in-short{border-top:1px solid var(--ink);border-bottom:1px solid var(--hairline);padding:16px 0;margin:24px 0}
.calc{margin:32px 0}
.calc-form{display:grid;gap:20px}
.calc-field .label{display:block;margin-bottom:8px}
.calc-input{width:100%;border:0;border-bottom:1px solid var(--ink);padding:10px 0;font:400 18px var(--f-ui);background:transparent}
.calc-toggle{display:flex;flex-wrap:wrap;gap:8px}
.calc-toggle input{position:absolute;opacity:0}
.calc-toggle span{display:inline-block;border:1px solid var(--ink);padding:9px 14px;font:500 11px/1 var(--f-ui);letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
.calc-toggle input:checked+span{background:var(--ink);color:var(--white)}
.calc-toggle input:focus-visible+span{outline:1px solid var(--ink);outline-offset:3px}
.calc-result{border:1px solid var(--ink);padding:28px;margin-top:28px;text-align:center}
.calc-big{font:400 clamp(36px,6vw,56px)/1.1 var(--f-head);margin:8px 0;color:var(--ink)}
.calc-row{display:flex;justify-content:space-between;margin-top:16px}
.calc-bar{height:4px;background:var(--hairline)}.calc-bar span{display:block;height:100%;width:0;background:var(--ink);transition:width .3s}
.calc-sources{border-top:1px solid var(--hairline);margin-top:28px;padding-top:16px}
.calc-sources summary{cursor:pointer}
.calc-note{font-size:12px;margin-top:16px}
.faq details{border-bottom:1px solid var(--hairline);padding:14px 0}.faq summary{cursor:pointer;font:400 20px var(--f-head)}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.tool-product{margin:72px auto}
.rate-card{border-top:1px solid var(--ink);padding-top:16px}
.steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:24px;counter-reset:none}
.step-num{display:block;font:400 44px/1 var(--f-mast);margin-bottom:8px}
.filter-row{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 24px;padding:20px 0 40px}
.filter-row .is-active{border-bottom:1px solid var(--ink)}
.about-grid,.landing-grid{display:grid;grid-template-columns:5fr 7fr;gap:56px;align-items:start;margin-bottom:72px}
.credentials{list-style:none;padding:0}
.is-landing .masthead{display:block;margin:28px 0}
.landing{padding-bottom:72px}
@media(max-width:900px){.grid-3,.steps,.about-grid,.landing-grid{grid-template-columns:1fr}}
