:root{--wine:#852638;--ink:#392e2b;--cream:#faf6ec;--yellow:#f2bf40;--line:#ded4c5;--muted:#716359}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--cream);color:var(--ink);font:17px/1.65 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{max-width:100%;display:block}figure,p,h1,h2,h3{margin:0}p+p{margin-top:18px}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.06;letter-spacing:-.045em}h1{font-size:clamp(50px,6.8vw,96px)}h2{font-size:clamp(37px,4.2vw,60px)}h3{font-size:20px;line-height:1.4;font-weight:500}em{font-weight:400;color:var(--wine)}.wrap{max-width:1300px;margin:auto;padding-left:60px;padding-right:60px}.eyebrow{font-size:12px;letter-spacing:.16em;font-weight:700;color:var(--wine);margin-bottom:24px}.skip{position:fixed;top:-100px;background:var(--yellow);z-index:50;padding:12px}.skip:focus{top:0}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--wine);outline-offset:5px}header{max-width:1440px;margin:auto;padding:20px 44px;display:flex;align-items:center;gap:36px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:14px;font-weight:700;font-size:17px;letter-spacing:.025em}.brand img{width:68px;height:68px;border-radius:50%}.brand small{display:block;font-size:10px;font-weight:400;letter-spacing:.16em;margin-top:3px}nav{display:flex;gap:30px;margin-left:auto;font-size:14px}.contact{border:1px solid var(--wine);padding:10px 20px;color:var(--wine);font-size:14px;border-radius:4px}nav a:hover,.text-link:hover{color:var(--wine)}.hero{display:grid;grid-template-columns:1.12fr 1fr;gap:65px;padding-top:64px;padding-bottom:70px;align-items:center}.intro{font-size:17px;margin:30px 0;max-width:475px;color:var(--muted)}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px}.button{display:inline-block;padding:16px 22px;background:var(--wine);color:white;border-radius:4px;font-size:15px;font-weight:600;transition:background .2s,transform .2s}.button:hover{background:#632031;transform:translateY(-2px)}.text-link{font-size:15px;text-decoration:underline;text-underline-offset:6px}.hero-note{font-size:12px;margin-top:36px;color:var(--muted)}.hero-photo{position:relative;padding:14px 14px 0;background:#ece2d2;transform:rotate(2deg);margin-right:12px;box-shadow:14px 16px 0 #eed290}.hero-photo>img{width:100%;height:490px;object-fit:cover;object-position:center 50%}.hero-photo figcaption{padding:20px 10px 24px;text-align:center;font-size:13px;line-height:1.5}.hero-photo figcaption em{display:block;font-family:Georgia,serif;font-size:20px}.photo-tag{position:absolute;left:-32px;top:35px;background:var(--yellow);padding:14px 20px;transform:rotate(-6deg);font-size:12px;line-height:1.5;box-shadow:0 4px 12px #0001}.photo-tag strong{font-weight:600}.ribbon{display:flex;gap:70px;justify-content:center;padding:23px;background:var(--yellow);color:#5b3826;font-size:14px}.ribbon span+span{border-left:1px solid #7b501f55;padding-left:70px}.gallery-section{padding-top:100px;padding-bottom:90px}.section-heading{display:grid;grid-template-columns:1.25fr 1fr;gap:85px;align-items:end;margin-bottom:40px}.section-heading>p{max-width:410px;color:var(--muted)}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:28px}.filters button{padding:9px 18px;border:1px solid var(--line);color:var(--muted);border-radius:25px;font-size:14px;background:transparent}.filters .active{background:var(--wine);border-color:var(--wine);color:#fff}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:36px 25px}.gallery figure[hidden]{display:none}.image-button{display:block;width:100%;padding:0;border:0;background:#e7ddcc;overflow:hidden;border-radius:3px}.image-button img{width:100%;height:365px;object-fit:cover;transition:transform .4s}.image-button:hover img{transform:scale(1.035)}.gallery figure:nth-child(2) img{object-position:center}.gallery figcaption{padding-top:17px}.gallery h3{font-family:Georgia,serif;font-size:23px}.gallery figcaption span{font-size:12px;color:var(--muted)}.gallery-footnote{margin-top:30px;font-size:12px;color:var(--muted)}.meaning{background:#eadfcf;padding:65px 0}.meaning-grid{display:grid;grid-template-columns:.55fr 1.4fr;gap:60px}.meaning-grid .eyebrow{padding-top:8px}.meaning h2{font-size:clamp(34px,3.6vw,51px)}.meaning p:not(.eyebrow){max-width:700px;margin-top:28px;color:#625449}.process{padding-top:100px;padding-bottom:90px}.steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:34px;margin:50px 0 35px}.step-number{display:block;color:var(--wine);font-family:Georgia,serif;font-size:38px;border-top:1px solid var(--line);padding-top:16px}.steps h3{margin:16px 0 12px;font-family:Georgia,serif;font-size:25px}.steps p{font-size:15px;color:var(--muted)}.artist{background:var(--yellow);padding:80px 0}.artist-grid{display:grid;grid-template-columns:.85fr 1.1fr;gap:95px;align-items:center}.artist-mark img{max-width:400px;margin:auto;mix-blend-mode:multiply}.artist p:not(.eyebrow){margin-top:23px;font-size:16px;max-width:535px;color:#60462e}.artist .text-link{display:inline-block;margin-top:26px}.questions{display:grid;grid-template-columns:.9fr 1.3fr;gap:100px;padding-top:95px;padding-bottom:100px}.questions>div>p:not(.eyebrow){margin-top:25px;max-width:300px;color:var(--muted);font-size:16px}details{border-top:1px solid var(--line)}details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;padding:22px 28px 22px 0;font-size:17px;list-style:none;position:relative}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:2px;font-size:24px;color:var(--wine);top:17px}details[open] summary:after{content:'−'}details>div{padding:0 15px 25px 0;font-size:15px;color:var(--muted)}details ul{padding-left:20px}details li+li{margin-top:8px}.closing{background:var(--wine);color:var(--cream);text-align:center;padding:80px 0 70px}.closing .eyebrow{color:#ecd7ad}.closing h2{font-size:clamp(43px,5.1vw,72px)}.closing em{color:#f2bf40}.closing p:not(.eyebrow){margin:26px auto;color:#eddfd9;max-width:640px}.closing .light{background:var(--cream);color:var(--wine);margin:10px 0 0}.closing .light:hover{background:var(--yellow)}.closing .availability{font-size:12px}footer{display:flex;justify-content:space-between;gap:20px;padding-top:35px;padding-bottom:35px;font-size:12px;color:var(--muted)}footer strong{color:var(--wine);font-size:14px}footer div:first-child span{display:block;margin-top:4px}footer div:last-child{display:flex;align-items:center;gap:25px}dialog{padding:55px 22px 20px;border:0;border-radius:6px;background:var(--cream);width:min(650px,93vw);max-height:92vh;overflow:auto}dialog::backdrop{background:#24120fdc}dialog img{max-height:70vh;width:auto;margin:auto;object-fit:contain}dialog h3{padding:18px 0 0;text-align:center;font-family:Georgia,serif}.close{position:absolute;right:20px;top:12px;background:transparent;border:0;color:var(--wine);font-size:15px}
@media(min-width:1440px){.hero-photo>img{height:540px}}@media(max-width:1100px){.wrap{padding-left:35px;padding-right:35px}header{padding:18px 30px;gap:20px}nav{gap:20px}.hero{gap:38px}.hero-photo>img{height:440px}.section-heading{gap:40px}.image-button img{height:310px}.artist-grid{gap:50px}.questions{gap:50px}.brand span{font-size:14px}.brand small{font-size:9px}}
@media(max-width:760px){html{scroll-padding-top:20px}header{padding:14px 20px;flex-wrap:wrap;gap:14px}.brand img{width:52px;height:52px}.brand{gap:10px}.brand span{font-size:13px}.contact{margin-left:auto;padding:8px 10px;font-size:12px}nav{order:3;margin:auto;justify-content:center;gap:30px;width:100%;font-size:13px}.wrap{padding-left:24px;padding-right:24px}.hero{grid-template-columns:1fr;gap:38px;padding-top:36px;padding-bottom:45px}.eyebrow{font-size:10px;letter-spacing:.13em;margin-bottom:20px}h1{font-size:clamp(50px,10vw,72px)}.intro{font-size:16px;margin:25px 0}.desktop{display:none}.hero-actions{gap:20px}.button{font-size:14px}.hero-note{margin-top:25px;font-size:11px}.hero-photo{margin:0 10px 0 8px}.hero-photo>img{height:420px}.photo-tag{left:-14px;top:25px}.ribbon{gap:15px;padding:20px 16px;text-align:center;font-size:11px;line-height:1.5}.ribbon span{flex:1}.ribbon span+span{padding-left:15px}.gallery-section,.process{padding-top:60px;padding-bottom:60px}.section-heading{grid-template-columns:1fr;gap:24px;margin-bottom:28px}.section-heading>p{font-size:16px}.filters{gap:7px}.filters button{font-size:12px;padding:8px 13px}.gallery{grid-template-columns:repeat(2,1fr);gap:28px 14px}.image-button img{height:230px}.gallery h3{font-size:20px;line-height:1.25}.gallery figcaption span{display:block;font-size:11px;line-height:1.5;margin-top:6px}.meaning{padding:45px 0}.meaning-grid{grid-template-columns:1fr;gap:8px}.meaning h2{font-size:37px}.meaning p:not(.eyebrow){font-size:16px}.steps{grid-template-columns:repeat(2,1fr);gap:32px 20px;margin-top:30px}.steps h3{font-size:23px}.steps p{font-size:14px}.step-number{font-size:32px}.artist{padding:50px 0}.artist-grid{grid-template-columns:1fr;gap:30px}.artist-mark img{width:220px}.artist-grid>div:last-child{max-width:520px;margin:auto}.questions{grid-template-columns:1fr;gap:35px;padding-top:60px;padding-bottom:60px}.questions>div>p:not(.eyebrow){max-width:100%}summary{font-size:16px}.closing{padding:60px 0 45px}.closing h2{font-size:44px}.closing p:not(.eyebrow){font-size:16px}.closing .availability{font-size:11px}footer{flex-direction:column;gap:22px;padding-top:26px;padding-bottom:26px}footer div:last-child{flex-wrap:wrap;gap:20px}}
@media(max-width:390px){.brand span{font-size:11px}.brand img{width:46px;height:46px}.contact{font-size:11px}h1{font-size:48px}.hero-photo>img{height:350px}.image-button img{height:195px}.gallery h3{font-size:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Logo proportions, contact icons and readable catalog tables. */
.artist-mark img{width:100%;max-width:400px;height:auto;aspect-ratio:1 / 1;object-fit:contain;mix-blend-mode:normal}
.social-icon{display:block;width:23px;height:23px;flex:0 0 23px}
.social-link,.artist .social-link{display:inline-flex;align-items:center;gap:9px}
.whatsapp-footer .social-icon{color:#128c4b}
.whatsapp-float{position:fixed;right:max(22px,env(safe-area-inset-right));bottom:calc(22px + env(safe-area-inset-bottom));z-index:30;display:flex;align-items:center;justify-content:center;width:62px;height:62px;border-radius:50%;background:#25d366;color:#fff;box-shadow:0 5px 20px #183b2d35;border:2px solid white;transition:transform .2s,background .2s}
.whatsapp-float .social-icon{width:33px;height:33px;flex-basis:33px}
.whatsapp-float:hover{background:#1bb85a;transform:translateY(-2px)}
.whatsapp-float:focus-visible{outline:3px solid var(--wine);outline-offset:5px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.pricing{padding-top:90px;padding-bottom:55px}
.price-group{margin-top:36px}
.price-group h3{font-family:Georgia,serif;font-size:29px;color:var(--wine);margin-bottom:9px}
.price-group>p{font-size:16px;color:var(--muted);margin-bottom:20px;max-width:780px}
.price-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%;font-size:16px;border:1px solid var(--line);border-radius:6px;overflow:hidden}
.format-col{width:48%}.size-col{width:27%}.value-col{width:25%}
.price-table thead th{background:var(--wine);color:#fff;padding:15px 20px;text-align:left;font-size:14px;font-weight:600}
.price-table tbody th,.price-table tbody td{padding:17px 20px;text-align:left;vertical-align:middle;border-bottom:1px solid #ded4c580;line-height:1.45}
.price-table tbody th{font-weight:400}
.price-table tbody tr:nth-child(odd){background:#f3ebdd}
.price-table tbody tr:nth-child(even){background:#fffcf6}
.price-table tbody tr:last-child>*{border-bottom:0}
.price-table tbody td:last-child,.price-table thead th:last-child{text-align:right}
.price-table tbody td:last-child{font-weight:600;color:var(--wine);white-space:nowrap;font-variant-numeric:tabular-nums}
.cell-note{display:block;font-size:14px;color:var(--muted);font-weight:400;margin-top:4px}
.price-table td .cell-note{margin-top:0;margin-bottom:3px}
.price-note{font-size:14px;color:var(--muted);margin-top:17px;max-width:800px}
footer{padding-right:100px}
@media(max-width:760px){
.artist-mark img{width:min(220px,100%);height:auto;aspect-ratio:1 / 1}
nav{gap:20px;flex-wrap:wrap}
.pricing{padding-top:60px;padding-bottom:20px}
.price-group{margin-top:30px}.price-group h3{font-size:26px}.price-group>p{font-size:15px}
.price-table{font-size:14px}.format-col{width:43%}.size-col{width:29%}.value-col{width:28%}
.price-table thead th{padding:12px 9px;font-size:13px}
.price-table tbody th,.price-table tbody td{padding:14px 9px}
.cell-note{font-size:12px;line-height:1.5}
.price-note{font-size:14px;line-height:1.6}
.whatsapp-float{width:58px;height:58px;right:18px;bottom:calc(18px + env(safe-area-inset-bottom))}
footer{padding-right:90px;padding-bottom:40px}
.artist .social-link{font-size:14px;text-align:left;line-height:1.5}
}
/* The artisan's photographs share the section's rhythm, without frames or overlaps. */
.artist{background:#eee6d8;padding:85px 0}
.artist-grid{grid-template-columns:1fr 1.08fr;grid-template-areas:"portrait bio" "portrait work";column-gap:70px;row-gap:35px;align-items:start}
.artist-portrait{grid-area:portrait;align-self:center;min-width:0}
.artist-portrait img{width:100%;height:auto;aspect-ratio:4 / 5;object-fit:cover;object-position:50% 78%}
.artist-bio{grid-area:bio;min-width:0}
.artist-work{grid-area:work;min-width:0}
.artist-work img{width:100%;height:auto;aspect-ratio:4 / 3;object-fit:cover;object-position:50% 55%}
.artist-work figcaption{font-size:13px;color:var(--muted);margin-top:10px}
.artist .artist-bio p:not(.eyebrow){color:#625449}
@media(max-width:1100px) and (min-width:761px){.artist-grid{column-gap:40px;row-gap:28px}.artist-portrait img{aspect-ratio:3 / 4}}
@media(max-width:760px){
.artist{padding:50px 0}
.artist-grid{grid-template-columns:1fr;grid-template-areas:"portrait" "bio" "work";gap:32px;align-items:start}
.artist-grid>.artist-bio{max-width:none;margin:0}
.artist-portrait img{aspect-ratio:4 / 5;object-position:50% 78%}
.artist-work img{aspect-ratio:4 / 3;object-position:50% 55%}
.artist-work figcaption{font-size:12px}
}
/* Temporary close portrait: the original photograph remains intact. */
.artist-portrait.portrait-test{position:relative;overflow:hidden;aspect-ratio:4 / 5;width:100%}
.artist-portrait.portrait-test .portrait-viewport{display:block;width:100%;height:auto;aspect-ratio:4 / 5;overflow:hidden}
/* Editorial portrait scale and aligned desktop rows. */
.artist-grid{max-width:1120px;grid-template-columns:minmax(250px,300px) minmax(0,1fr);grid-template-areas:"portrait bio" "work work";column-gap:65px;row-gap:42px}
.artist-portrait{align-self:start}
.artist-work{display:grid;grid-template-columns:minmax(250px,300px) minmax(0,1fr);column-gap:65px;align-items:start}
.artist-work img{grid-column:2;grid-row:1}
.artist-work figcaption{grid-column:1;grid-row:1;margin:0;padding-top:18px;border-top:1px solid #b5a38d;font-family:Georgia,'Times New Roman',serif;font-size:27px;line-height:1.3;color:var(--wine);max-width:230px}
@media(max-width:1100px) and (min-width:761px){.artist-grid,.artist-work{grid-template-columns:minmax(230px,280px) minmax(0,1fr);column-gap:40px}}
@media(max-width:760px){
.artist-grid{grid-template-columns:1fr;grid-template-areas:"portrait" "bio" "work";gap:30px}
.artist-portrait.portrait-test{max-width:300px;justify-self:center}
.artist-work{display:block}
.artist-work figcaption{margin-top:10px;padding-top:0;border-top:0;font-family:Arial,Helvetica,sans-serif;font-size:12px;line-height:1.65;color:var(--muted);max-width:none}
}
/* Circular original portrait and a softer finish for the working photograph. */
.artist-grid{row-gap:24px}
.artist-portrait.portrait-test{width:240px;max-width:100%;aspect-ratio:1 / 1;border-radius:50%;overflow:hidden;justify-self:center;margin-top:260px;align-self:start}
.artist-portrait.portrait-test .portrait-viewport{width:100%;height:auto;aspect-ratio:1 / 1}
.artist-work img{border-radius:14px}
.artist-work figcaption{justify-self:center;padding-top:12px;text-align:center;max-width:240px}
@media(max-width:1100px) and (min-width:761px){.artist-portrait.portrait-test{width:220px;margin-top:245px}}
@media(max-width:760px){
.artist-grid{gap:30px}
.artist-portrait.portrait-test{width:230px;max-width:100%;margin-top:0}
.artist-work img{border-radius:12px}
.artist-work figcaption{padding-top:0;text-align:left;max-width:none}
}
