@font-face{font-family:Cochin;src:url('fonts/cochin-regular.woff2')}@font-face{font-family:Jost;src:url('fonts/jost.woff2')}@font-face{font-family:Boisterous;src:url('fonts/boisterous.woff2')}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:#fff;color:#494949;font-family:Jost,Arial,sans-serif}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid #494949;outline-offset:6px}header{padding:28px 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e5e5e5}.wordmark{font:36px/.85 Cochin,serif;letter-spacing:.04em}.wordmark span{display:block;font:8px Jost,sans-serif;letter-spacing:.22em;margin-top:11px}.navlink,.eyebrow,figcaption,footer{font-size:10px;letter-spacing:.18em}.navlink span{font-size:24px;margin-left:24px}.hero{display:grid;grid-template-columns:46% 54%;padding:62px 5% 42px;align-items:center;min-height:730px;max-width:1700px;margin:auto}.hero-copy{position:relative;z-index:1}.eyebrow{margin:0 0 36px}h1{font:clamp(88px,12.8vw,205px)/.81 Cochin,serif;font-weight:400;letter-spacing:-.04em;margin:0}h1 em{font-style:normal;color:#494949}.handwritten{font:clamp(37px,4.4vw,68px)/1.15 Boisterous,cursive;margin:30px 0 46px;transform:rotate(-5deg);max-width:450px}.text-link{display:inline-flex;gap:35px;align-items:center;font-size:12px;border-bottom:1px solid #999;padding-bottom:10px}.hero-image{margin:0 0 0 -35px;align-self:center}.open-study{border:0;padding:0;background:none;display:block;width:100%}.hero-image img{width:100%;height:auto;display:block}.hero-image figcaption{display:flex;justify-content:space-between;margin:16px 10px 0}.intro{padding:75px 5% 0;max-width:1700px;margin:auto}.intro .eyebrow{margin-bottom:22px}.intro-row{display:flex;justify-content:space-between;align-items:end;gap:25px}h2{font:clamp(48px,5vw,80px)/1.05 Cochin,serif;font-weight:400;margin:0 0 35px;letter-spacing:-.03em}.intro-row p{font-size:15px;line-height:1.5;margin:0 0 37px}.collection-bar{border-top:1px solid #ccc;border-bottom:1px solid #e5e5e5;padding:15px 0;display:flex;align-items:center;justify-content:space-between;font-size:11px}.filters{display:flex;gap:28px}.filters button{background:none;border:0;border-bottom:1px solid transparent;padding:5px 0}.filters button.active{border-color:#494949}.studies{max-width:1600px;margin:auto;padding:50px 5%;display:grid;grid-template-columns:1fr 1fr;gap:65px 8%;align-items:start}.study{margin:0;min-width:0;scroll-margin-top:30px}.study:nth-of-type(even){margin-top:100px}.study img{width:100%;height:auto;display:block}.study figcaption{border-top:1px solid #e5e5e5;padding:14px 0;display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:9px}.study figcaption button{border:0;background:none;font-size:12px;padding:3px 0}.quote-break{grid-column:1/-1;text-align:left;padding:65px 7%;margin:0;font:clamp(54px,7vw,112px)/1 Cochin,serif;letter-spacing:-.03em}.quote-break span{display:block;color:#494949}.quote-break small{display:block;font:10px Jost,sans-serif;letter-spacing:.2em;margin-top:25px}.closing{background:#fff;padding:85px 10%}.closing blockquote{margin:0 0 50px;font:clamp(42px,5.5vw,82px)/1.04 Cochin,serif;letter-spacing:-.02em}footer{display:flex;justify-content:space-between;gap:20px;padding:30px 5%;font-size:9px}dialog{border:0;padding:25px;background:#fff;color:#494949;width:min(1100px,96vw);max-height:94vh}dialog::backdrop{background:rgba(73,73,73,.72)}dialog img{display:block;max-width:100%;max-height:73vh;margin:auto;object-fit:contain}.viewer-bar,.viewer-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:12px}.viewer-bar{margin-bottom:15px}.viewer-footer{margin-top:20px}.viewer-bar button,.viewer-footer button{border:0;background:none;padding:8px}.viewer-footer a{border-bottom:1px solid #999;padding:8px 0}body:has(dialog[open]){overflow:hidden}@media(max-width:700px){header{padding:24px 6%}.navlink{font-size:8px;letter-spacing:.12em}.navlink span{margin-left:8px}.wordmark{font-size:29px}.hero{grid-template-columns:1fr;padding:45px 6% 20px;min-height:0}.hero-copy .eyebrow{margin-bottom:25px}h1{font-size:27vw;line-height:.8}.handwritten{font-size:44px;margin:23px 0 30px}.hero-image{margin:30px -4% 0}.hero-image figcaption{font-size:8px;margin:10px 12px}.intro{padding:65px 6% 0}.intro-row{display:block}.intro-row h2{margin-bottom:18px}.intro-row p{margin-bottom:28px;font-size:14px}.studies{padding:30px 6%;gap:28px;grid-template-columns:1fr}.study:nth-of-type(even){margin-top:0}.study.portrait{width:86%;margin-left:auto;margin-right:auto}.quote-break{padding:30px 0;font-size:55px}.closing{padding:55px 6%}footer{padding:24px 6%;flex-direction:column;gap:8px}dialog{padding:14px}.viewer-footer{font-size:11px}.viewer-footer button{padding:8px 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Neutral review: preserve original faded photography and established composition. */
.hero-copy>.text-link{margin-top:55px}.closing{border-top:1px solid #e5e5e5;padding-top:45px;padding-bottom:45px}

/* Owner-selected jelly pink: glossy lettering, clean white field, untouched photos. */
:root{--jelly:#e52379;--jelly-deep:#a5114d}
h1 em{display:inline-block;color:#df1c72;background:linear-gradient(172deg,#a70d4c 0%,#e1267c 15%,#ff77b8 29%,#ffdbec 32%,#ff83bd 34%,#f42c8b 48%,#d70d65 68%,#fb67ad 83%,#b41052 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 1px 0 #b8125633)}
.text-link{border-bottom-color:var(--jelly);color:var(--jelly-deep)}.text-link span{color:var(--jelly)}.filters button.active{border-color:var(--jelly);color:var(--jelly-deep)}.study figcaption button{color:var(--jelly-deep)}button:focus-visible,a:focus-visible{outline-color:var(--jelly)}
@media(forced-colors:active){h1 em{-webkit-text-fill-color:CanvasText;background:none;filter:none}}

/* PETRO uses dark grey, never black. The O is a pink lipstick impression. */
.petro-name{display:inline-flex;align-items:baseline;white-space:nowrap;letter-spacing:-.04em;color:#494949}
h1 .petro-name{display:flex;align-items:center;line-height:.81}
.kiss-o{display:inline-block;width:.86em;height:.70em;object-fit:contain;vertical-align:baseline;margin-left:.012em;flex:none;transform:translateY(-.05em) rotate(-90deg) scale(.86);transform-origin:center}
.wordmark .petro-name{display:inline-flex;font:inherit;letter-spacing:inherit;margin:0;align-items:center}
.wordmark .kiss-o{width:.85em;height:.69em;margin-left:.01em}

/* A real Cochin O carries the lipstick pigment; normal lettering controls its spacing. */
h1 .petro-name{display:block;line-height:.81;white-space:nowrap}
.wordmark .petro-name{display:inline;line-height:inherit;letter-spacing:inherit}
.lipstick-o,.wordmark .petro-name .lipstick-o{display:inline;font:inherit;line-height:inherit;letter-spacing:inherit;margin:0;padding:0;color:#e52379;background-color:#e52379;background-image:url('assets/jelly-pink-kiss-o.png'),linear-gradient(170deg,#db176b 8%,#ff83bd 31%,#ffb9dc 33%,#f02b84 48%,#cd145e 78%,#fb69ad 96%);background-size:100% 100%;background-position:center;background-repeat:no-repeat;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
@media(forced-colors:active){.lipstick-o,.wordmark .petro-name .lipstick-o{-webkit-text-fill-color:CanvasText;background:none}}

/* Glossy cherry and jelly pink, selected by Melanie. */
:root{--petro-gloss:linear-gradient(172deg,#c51f45 0%,#e93260 22%,#ff789c 30%,#ffe0eb 32%,#ff9abb 34%,#ed315f 45%,#d01e48 66%,#f25b84 84%,#be2448 100%);--pout-gloss:linear-gradient(172deg,#da236c 0%,#f03a8d 20%,#ff8dc3 30%,#ffe5f2 32%,#ffa4cf 34%,#f34296 47%,#de226f 68%,#ff79b6 84%,#d22a70 100%)}
h1 .petro-name,.wordmark .petro-name{color:#db2c55;background:var(--petro-gloss);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
h1 .petro-name .lipstick-o,.wordmark .petro-name .lipstick-o{background:none;color:inherit;-webkit-text-fill-color:inherit}
h1 em{color:#ed368a;background:var(--pout-gloss);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 1px 0 #d22a7022)}
@media(forced-colors:active){h1 .petro-name,.wordmark .petro-name,h1 em{-webkit-text-fill-color:CanvasText;background:none;filter:none}}

h1 .petro-name{width:max-content}

/* The supplied artist portrait leads; established signature lettering stays modest. */
.artist-hero{grid-template-columns:36% 64%;padding:30px 0 10px 5%;min-height:0;overflow:hidden}
.artist-hero .hero-copy{padding-right:12px}
.artist-hero .eyebrow{margin-bottom:24px}
h1.artist-title{font:400 clamp(64px,7.8vw,112px)/1.25 Boisterous,cursive;letter-spacing:0;margin:0;color:#d6447d;white-space:nowrap;transform:rotate(-4deg);transform-origin:left center}
.artist-hero .hero-copy>.text-link{margin-top:36px}
.artist-image{margin:0 0 0 -65px;position:relative;align-self:stretch}
.artist-image img{display:block;width:100%;height:auto;mask-image:linear-gradient(to right,transparent 0%,#000 17%),linear-gradient(to bottom,#000 83%,transparent 100%);mask-composite:intersect;-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 17%),linear-gradient(to bottom,#000 83%,transparent 100%);-webkit-mask-composite:source-in}
@media(max-width:700px){.artist-hero{display:flex;flex-direction:column;padding:38px 0 0;overflow:hidden}.artist-hero .hero-copy{width:100%;padding:0 6%;}.artist-hero .eyebrow{margin-bottom:12px}h1.artist-title{font-size:18vw;line-height:1.25}.artist-hero .hero-copy>.text-link{margin-top:22px}.artist-image{width:100%;margin:24px 0 0}.artist-image img{mask-image:linear-gradient(to bottom,#000 83%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 83%,transparent 100%)}.intro{padding-top:40px}}

.artist-hero .eyebrow{margin-bottom:40px}h1.artist-title{font-size:clamp(52px,6vw,90px);line-height:1.5}.artist-hero .hero-copy>.text-link{margin-top:22px}@media(max-width:700px){.artist-hero .eyebrow{margin-bottom:26px}h1.artist-title{font-size:16vw;line-height:1.5}}

/* Gallery + lip education: open editorial layouts in the approved drawing direction. */
.skip-link{position:absolute;top:-100px;left:20px;background:white;padding:12px;z-index:10}.skip-link:focus{top:10px}
.header-nav{display:flex;gap:30px;align-items:center;font-size:10px;letter-spacing:.13em}.header-nav a:hover,.chapter-nav a:hover{color:var(--jelly)}
.chapter-nav{max-width:1530px;margin:35px auto 0;padding:22px 5%;display:flex;justify-content:space-between;gap:20px;border-top:1px solid #e5e5e5;border-bottom:1px solid #e5e5e5;font-size:12px}
.results-note{font-size:12px;color:#696969}.intro{padding-top:65px}.filters{flex-wrap:wrap;gap:24px}.filters button{min-height:40px}.collection-bar{gap:12px}.collection-bar>#count{white-space:nowrap}
.editorial-section{max-width:1500px;margin:0 auto;padding:85px 7%}.editorial-section p{font-size:17px;line-height:1.7;margin:0 0 22px}.editorial-section .eyebrow{font-size:10px;line-height:1.5;letter-spacing:.18em;margin-bottom:25px}.editorial-section h2{font-size:clamp(38px,4.2vw,62px);line-height:1.15;margin-bottom:32px}.signature{font-family:Boisterous,cursive;font-size:1.12em;font-weight:400;color:#d6447d;letter-spacing:0;line-height:1.55}.editorial-section h3{font:400 29px/1.2 Cochin,serif;margin:30px 0 13px}.editorial-section .text-link{font-size:14px}.editorial-section a:not(.text-link){text-decoration:underline;text-underline-offset:4px;text-decoration-color:#e6a9c1}
.art-interlude{display:grid;grid-template-columns:48% 45%;gap:7%;align-items:center;padding-top:30px;padding-bottom:40px}.art-interlude figure{margin:0}.art-interlude img{width:100%;height:auto;display:block;mask-image:radial-gradient(ellipse 68% 65%,white 52%,transparent 76%);-webkit-mask-image:radial-gradient(ellipse 68% 65%,white 52%,transparent 76%)}.art-interlude blockquote{margin:0 0 25px;font:400 clamp(35px,4.2vw,60px)/1.2 Cochin,serif;letter-spacing:-.025em}.art-interlude .signature{display:block}
.lip-guide{display:grid;grid-template-columns:44% 48%;gap:8%;border-top:1px solid #e5e5e5}.guide-heading{align-self:start}.guide-heading .section-deck{max-width:410px}.guide-heading .text-link{margin-top:14px}.guide-body>h3:first-child{margin-top:0}
.recovery{border-top:1px solid #e5e5e5}.recovery-stages{display:grid;grid-template-columns:repeat(3,1fr);gap:6%;margin-top:42px}.recovery-stages .step-label{font-size:10px;letter-spacing:.12em;color:#ab335f;margin-bottom:15px}.recovery-stages h3{margin-top:0}.recovery-stages p{font-size:16px}
.questions{display:grid;grid-template-columns:40% 52%;gap:0 8%;border-top:1px solid #e5e5e5}.question-list details{border-bottom:1px solid #ddd}.question-list details:first-child{border-top:1px solid #ddd}.question-list summary{font:400 25px/1.3 Cochin,serif;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;padding:22px 0}.question-list summary::-webkit-details-marker{display:none}.question-list summary:after{content:'+';color:#bc3869;font:22px Jost,sans-serif}.question-list details[open] summary:after{content:'−'}.question-list details p{font-size:16px;line-height:1.7;margin:0 22px 24px 0}.question-list summary:focus-visible,.reading-notes summary:focus-visible{outline:2px solid var(--jelly);outline-offset:5px}
.care-note{grid-column:2;margin-top:28px}.care-note h3{font-size:24px}.care-note p{font-size:14px;line-height:1.65}.reading-notes{grid-column:2;font-size:13px;margin-top:18px}.reading-notes summary{cursor:pointer;min-height:40px}.reading-notes p,.reading-notes li{font-size:13px;line-height:1.7}.reading-notes ul{padding-left:20px}
.consultation{border-top:1px solid #e5e5e5}.consultation-links{display:flex;flex-wrap:wrap;gap:30px 50px;margin:35px 0}.consultation .practice-address{font-size:12px;letter-spacing:.03em}.closing{max-width:1500px;margin:auto;padding:30px 7%}.viewer-sharing{display:flex;gap:15px;align-items:center}#viewer-status{font-size:12px;text-align:center;min-height:1.5em;margin:8px 0 0}#share-url{width:100%;padding:8px;font:14px Jost,sans-serif;color:#494949;background:white;border:1px solid #bbb}.viewer-footer button,.viewer-bar button{min-height:44px}footer a:hover{color:var(--jelly)}
@media(max-width:700px){.header-nav{gap:13px;font-size:8px;letter-spacing:.07em}.header-nav a:last-child{display:none}.chapter-nav{margin-top:12px;padding:17px 6%;display:grid;grid-template-columns:1fr 1fr;gap:18px 12px;font-size:11px}.editorial-section{padding:50px 6%}.editorial-section p{font-size:16px}.editorial-section h2{font-size:39px}.editorial-section h3{font-size:27px}.art-interlude{grid-template-columns:1fr;gap:5px}.art-interlude figure{max-width:380px;width:100%;margin:0 auto}.art-interlude blockquote{font-size:40px}.lip-guide,.questions{grid-template-columns:1fr;gap:40px}.guide-body>h3:first-child{margin-top:0}.recovery-stages{grid-template-columns:1fr;gap:22px;margin-top:28px}.recovery-stages>div{border-bottom:1px solid #eee;padding-bottom:12px}.questions{gap:20px}.care-note,.reading-notes{grid-column:1}.question-list summary{font-size:24px}.viewer-sharing{flex-direction:column;gap:0}.viewer-footer{gap:5px}.viewer-footer a{padding:4px 0}.filters{gap:15px}.collection-bar{font-size:10px}.study figcaption{font-size:8px}.study figcaption button{font-size:11px}footer{font-size:9px;line-height:1.6}}
