:root{--ink:#1d2433;--muted:#6d7480;--paper:#fffdf9;--line:#e8e5df;--pink:#f4b7cf;--pink-soft:#fff0f6;--blue:#9fc9f7;--blue-soft:#eef6ff;--yellow:#ffd96a;--yellow-soft:#fff8d9;--shadow:0 24px 70px rgba(29,36,51,.09);--radius:28px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,textarea,select{font:inherit}.site-header{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px clamp(20px,4vw,68px);background:rgba(255,253,249,.9);backdrop-filter:blur(18px);border-bottom:1px solid rgba(232,229,223,.8)}.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:50% 42% 58% 44%;background:linear-gradient(145deg,var(--pink),var(--yellow));font:700 22px Georgia,serif}.brand span:last-child{display:flex;flex-direction:column;line-height:1.2}.brand strong{font-family:Georgia,"Times New Roman",serif;font-size:18px}.brand small{color:var(--muted);font-size:11px}.site-nav{display:flex;align-items:center;gap:26px;font-size:14px}.site-nav a{position:relative}.site-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-5px;height:2px;background:var(--ink);transition:.2s}.site-nav a:hover:after{right:0}.menu-toggle{display:none;border:0;background:var(--ink);color:white;border-radius:999px;padding:9px 14px}.hero{min-height:calc(100vh - 76px);display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);gap:clamp(34px,7vw,110px);align-items:center;padding:clamp(58px,9vw,130px) clamp(20px,7vw,110px);overflow:hidden}.hero-copy{max-width:760px}.eyebrow{margin:0 0 14px;text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:800;color:#5f6470}.hero h1,.page-hero h1,.product-info h1,.order-summary h1,.success-page h1,.legal-page h1{font:500 clamp(48px,7vw,104px)/.98 Georgia,"Times New Roman",serif;letter-spacing:-.045em;margin:0}.lead{font-size:clamp(18px,2vw,25px);color:#535a67;max-width:710px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 24px;border:1px solid var(--ink);border-radius:999px;background:var(--ink);color:white;font-weight:750;cursor:pointer;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(29,36,51,.18)}.button-secondary{background:transparent;color:var(--ink)}.button.full{width:100%}.button:disabled{opacity:.55;cursor:not-allowed}.hero-portrait{position:relative;min-height:580px}.hero-portrait>img,.portrait-placeholder{position:relative;z-index:2;width:100%;height:100%;min-height:580px;object-fit:cover;border-radius:48% 52% 46% 54%/44% 48% 52% 56%;box-shadow:var(--shadow)}.portrait-placeholder{display:grid;place-items:center;background:linear-gradient(145deg,#f6e9ef,#edf4ff 55%,#fff3c6);color:#707482}.splash{position:absolute;display:block;border-radius:50%;filter:blur(1px)}.splash-pink{width:230px;height:230px;background:var(--pink);left:-80px;top:-45px}.splash-blue{width:270px;height:270px;background:var(--blue);right:-110px;bottom:30px}.splash-yellow{width:120px;height:120px;background:var(--yellow);left:3%;bottom:-20px}.section{padding:clamp(70px,10vw,140px) clamp(20px,7vw,110px)}.section.compact-top{padding-top:30px}.intro-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(40px,8vw,120px);align-items:start}.section h2{font:500 clamp(38px,5vw,72px)/1 Georgia,"Times New Roman",serif;margin:0 0 24px;letter-spacing:-.035em}.big-copy{font-size:clamp(19px,2vw,26px);max-width:820px}.facts{display:grid;gap:14px}.facts div{padding:24px;border:1px solid var(--line);border-radius:22px;background:white}.facts span{display:block;color:var(--muted);font-size:13px;margin-bottom:7px}.facts strong{font-size:18px}.color-panels{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.panel{min-height:330px;padding:34px;border-radius:var(--radius);box-shadow:var(--shadow)}.panel h3{font:500 42px/1 Georgia,serif;margin:30px 0 20px}.panel p:last-child{font-size:18px}.panel-pink{background:var(--pink-soft)}.panel-blue{background:var(--blue-soft)}.panel-yellow{background:var(--yellow-soft)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:36px}.section-heading a{font-weight:750}.gallery{--gap:22px;gap:var(--gap)}.gallery-masonry{columns:4 260px}.gallery-masonry .painting-card{break-inside:avoid;margin-bottom:var(--gap)}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.painting-card{background:transparent}.painting-image{position:relative;display:block;border-radius:22px;overflow:hidden;background:#f2efe9}.painting-image img{width:100%;height:auto;transition:transform .45s}.gallery-grid .painting-image{aspect-ratio:4/5}.gallery-grid .painting-image img{width:100%;height:100%;object-fit:cover}.painting-image:hover img{transform:scale(1.025)}.painting-meta{display:flex;justify-content:space-between;gap:18px;padding:14px 4px 8px}.painting-meta h3{margin:0 0 4px;font:500 23px/1.15 Georgia,serif}.painting-meta p{margin:0;color:var(--muted);font-size:14px}.price{font-weight:800;white-space:nowrap}.badge{position:absolute;top:14px;left:14px;padding:8px 12px;border-radius:999px;background:var(--yellow);font-size:12px;font-weight:800}.badge-dark{background:var(--ink);color:white}.art-placeholder{display:grid;place-items:center;aspect-ratio:4/5;background:linear-gradient(145deg,var(--pink-soft),var(--blue-soft),var(--yellow-soft));font:500 76px Georgia,serif}.art-placeholder.large{min-height:580px}.empty-state{padding:70px 30px;text-align:center;border:1px dashed #cfcac2;border-radius:var(--radius);background:white}.empty-state h3{font:500 34px Georgia,serif;margin:0 0 12px}.contact-strip{display:flex;justify-content:space-between;align-items:center;gap:30px;background:var(--ink);color:white}.contact-actions{display:flex;flex-direction:column;align-items:flex-end;gap:10px;font-size:20px}.site-footer{display:flex;justify-content:space-between;gap:30px;padding:38px clamp(20px,7vw,110px);border-top:1px solid var(--line)}.site-footer p{color:var(--muted);margin:5px 0}.footer-links{display:flex;flex-wrap:wrap;gap:20px;align-items:center;font-size:13px}.page-hero{padding:clamp(80px,11vw,150px) clamp(20px,7vw,110px) 40px;background:linear-gradient(115deg,var(--pink-soft),white 42%,var(--blue-soft))}.page-hero h1{font-size:clamp(56px,9vw,130px)}.page-hero>p:last-child{font-size:20px;max-width:760px}.shop-hero{background:linear-gradient(115deg,var(--yellow-soft),white 45%,var(--pink-soft))}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:34px}.filters a{padding:10px 15px;border:1px solid var(--line);border-radius:999px;background:white}.filters a.active{background:var(--ink);color:white;border-color:var(--ink)}.filters small{opacity:.65}.product-page{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:clamp(36px,7vw,100px);padding:clamp(34px,6vw,90px) clamp(20px,7vw,110px);align-items:start}.product-gallery{min-width:0}.product-main{background:#f2efe9;border-radius:28px;overflow:hidden}.product-main img{width:100%;max-height:82vh;object-fit:contain;background:#f3f1ec}.thumbnails{display:flex;gap:10px;overflow:auto;padding:14px 2px}.thumb{flex:0 0 86px;padding:0;border:2px solid transparent;border-radius:14px;overflow:hidden;background:white;cursor:pointer}.thumb.active{border-color:var(--ink)}.thumb img{width:100%;height:86px;object-fit:cover}.product-info{position:sticky;top:110px}.product-info h1{font-size:clamp(46px,6vw,82px)}.specs{margin:34px 0;border-top:1px solid var(--line)}.specs div{display:grid;grid-template-columns:120px 1fr;gap:20px;padding:13px 0;border-bottom:1px solid var(--line)}.specs dt{color:var(--muted)}.specs dd{margin:0;font-weight:650}.purchase-box{padding:24px;border-radius:24px;background:var(--yellow-soft)}.product-price{font:600 34px Georgia,serif;margin-bottom:18px}.purchase-box p{font-size:13px;color:#665e49}.order-layout{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);min-height:calc(100vh - 76px)}.order-summary{padding:clamp(35px,6vw,90px);background:var(--blue-soft)}.order-summary img{width:100%;max-height:55vh;object-fit:contain;border-radius:24px;margin-bottom:30px}.order-summary h1{font-size:clamp(38px,5vw,68px)}.order-form{padding:clamp(35px,6vw,90px);max-width:950px}.order-form h2{font:500 44px Georgia,serif;margin:0 0 8px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:32px 0}.form-grid label,.order-form>label{display:flex;flex-direction:column;gap:7px;font-weight:700}.span-2{grid-column:span 2}.form-grid input,.form-grid textarea,.form-grid select{width:100%;border:1px solid #d8d4cc;border-radius:14px;background:white;padding:13px 14px;outline:none}.form-grid input:focus,.form-grid textarea:focus,.form-grid select:focus{border-color:var(--ink);box-shadow:0 0 0 3px rgba(159,201,247,.35)}.checkbox{flex-direction:row!important;align-items:flex-start!important;font-weight:500!important;margin-bottom:25px}.checkbox input{margin-top:5px}.checkbox a{text-decoration:underline}.honeypot{position:absolute;left:-10000px}.success-page,.legal-page{min-height:70vh;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(70px,10vw,140px) clamp(20px,15vw,240px)}.success-mark{display:grid;place-items:center;width:74px;height:74px;background:var(--yellow);border-radius:50%;font-size:36px;margin-bottom:30px}.success-page h1,.legal-page h1{font-size:clamp(48px,7vw,92px)}.success-page p{font-size:20px}.legal-text{max-width:900px;font-size:18px;white-space:normal;margin-top:35px}.contact-page{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px}.contact-card{padding:36px;border-radius:var(--radius);background:var(--pink-soft);display:flex;flex-direction:column;align-items:flex-start}.contact-card h2{font-size:44px}.contact-card a{font-size:20px;margin-top:10px}.social-list{display:flex;flex-direction:column;border-top:1px solid var(--line)}.social-list a{display:flex;justify-content:space-between;padding:22px 5px;border-bottom:1px solid var(--line);font-size:24px}.flash-wrap{position:fixed;z-index:60;top:90px;right:20px;max-width:420px}.flash{padding:13px 16px;border-radius:12px;background:white;box-shadow:var(--shadow);margin-bottom:8px}.flash-success{border-left:5px solid #55a76a}.flash-error{border-left:5px solid #d9534f}.flash-warning{border-left:5px solid #d9a800}.error-code{font:700 120px Georgia,serif;color:var(--pink)}
@media(max-width:980px){.site-nav{position:absolute;top:75px;left:16px;right:16px;display:none;flex-direction:column;align-items:stretch;padding:18px;background:white;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}.site-nav.open{display:flex}.menu-toggle{display:block}.hero{grid-template-columns:1fr;min-height:auto}.hero-portrait{min-height:460px;max-width:650px}.hero-portrait>img,.portrait-placeholder{min-height:460px}.intro-grid,.contact-page{grid-template-columns:1fr}.color-panels{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-page{grid-template-columns:1fr}.product-info{position:static}.order-layout{grid-template-columns:1fr}.order-summary{display:grid;grid-template-columns:180px 1fr;gap:24px;align-items:center}.order-summary img{margin:0;max-height:260px}.contact-strip{align-items:flex-start;flex-direction:column}.contact-actions{align-items:flex-start}}
@media(max-width:640px){.brand small{display:none}.hero{padding-top:45px}.hero h1{font-size:52px}.hero-portrait,.hero-portrait>img,.portrait-placeholder{min-height:380px}.section{padding:70px 18px}.gallery-grid{grid-template-columns:1fr}.painting-meta{flex-direction:column;gap:8px}.page-hero{padding-left:18px;padding-right:18px}.product-page{padding:24px 16px}.product-main{border-radius:18px}.art-placeholder.large{min-height:380px}.order-summary{grid-template-columns:1fr}.order-summary img{max-height:350px}.order-form{padding:35px 18px}.form-grid{grid-template-columns:1fr}.span-2{grid-column:span 1}.site-footer{flex-direction:column}.contact-strip{padding:60px 18px}.section-heading{align-items:flex-start;flex-direction:column}.gallery-masonry{columns:1}.product-info h1{font-size:50px}}

/* v1.1: video is intentionally separate from the photo gallery */
.painting-video-section{padding:0 clamp(20px,6vw,90px) clamp(70px,9vw,130px);max-width:1500px;margin:0 auto}.painting-video-heading{max-width:760px;margin-bottom:24px}.painting-video-heading h2{font:500 clamp(36px,5vw,64px) Georgia,serif;margin:0}.painting-video-section video{display:block;width:100%;max-height:78vh;border-radius:28px;background:#111;box-shadow:var(--shadow)}
@media(max-width:640px){.painting-video-section{padding:0 16px 70px}.painting-video-section video{border-radius:18px}}


/* v1.1.1: compact desktop hero and prominent pill navigation */
.button-buy{background:var(--yellow);border-color:#e5bf3c;color:#2e291b}.button-buy:hover{box-shadow:0 12px 30px rgba(205,164,35,.22)}
@media(min-width:981px){
  .site-header{padding-top:12px;padding-bottom:12px}
  .site-nav{gap:7px;padding:5px;border:1px solid rgba(29,36,51,.08);border-radius:999px;background:rgba(255,255,255,.78);box-shadow:0 8px 24px rgba(29,36,51,.055);font-size:14px}
  .site-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 16px;border:1px solid transparent;border-radius:999px;font-weight:760;letter-spacing:-.01em;transition:transform .18s,box-shadow .18s,background .18s,border-color .18s}
  .site-nav a:after{display:none}
  .site-nav a:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(29,36,51,.09)}
  .site-nav .nav-about{background:#fff;border-color:var(--line)}
  .site-nav .nav-portfolio{background:var(--pink-soft);border-color:#f1c8d9}
  .site-nav .nav-shop{background:var(--yellow);border-color:#e8c34a;color:#302a19;box-shadow:0 8px 20px rgba(219,178,47,.2)}
  .site-nav .nav-contact{background:var(--blue-soft);border-color:#c9e0f9}
  .site-nav a.active{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}

  .hero{min-height:auto;grid-template-columns:minmax(0,1.18fr) minmax(340px,.72fr);gap:clamp(36px,5vw,78px);align-items:center;padding:42px clamp(28px,6vw,94px) 52px;max-width:1680px;margin:0 auto}
  .hero-copy{max-width:900px}
  .hero h1{font-size:clamp(54px,5.3vw,82px);line-height:.98;max-width:900px}
  .hero .lead{font-size:clamp(16px,1.45vw,20px);line-height:1.55;max-width:760px;margin:18px 0 0}
  .hero-actions{margin-top:24px}
  .hero-portrait{min-height:440px;height:440px;width:min(100%,440px);justify-self:end}
  .hero-portrait>img,.portrait-placeholder{min-height:440px;height:440px;border-radius:34% 46% 38% 44%/37% 38% 44% 48%}
  .splash-pink{width:160px;height:160px;left:-54px;top:-28px}
  .splash-blue{width:185px;height:185px;right:-65px;bottom:22px}
  .splash-yellow{width:88px;height:88px;bottom:-12px}

  .hero-about-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(310px,.72fr);gap:24px;margin-top:28px;padding:22px 24px;border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.8);box-shadow:0 14px 40px rgba(29,36,51,.055)}
  .hero-about-card .eyebrow{margin-bottom:7px}
  .hero-about-card h2{font:500 clamp(25px,2.1vw,34px)/1.05 Georgia,"Times New Roman",serif;margin:0 0 9px;letter-spacing:-.025em}
  .hero-about-text{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;margin:0;color:#555c68;font-size:15px;line-height:1.45}
  .hero-about-link{display:inline-block;margin-top:8px;font-size:13px;font-weight:800}
  .hero-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .hero-facts div{min-width:0;padding:12px 11px;border-radius:16px;background:var(--paper);border:1px solid var(--line)}
  .hero-facts span{display:block;margin-bottom:4px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
  .hero-facts strong{display:block;overflow:hidden;font-size:12px;line-height:1.35;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}

  .intro-grid{padding-top:72px}
}

@media(max-width:1180px) and (min-width:981px){
  .brand small{display:none}
  .site-nav a{padding-left:12px;padding-right:12px;font-size:13px}
  .hero{grid-template-columns:minmax(0,1.1fr) minmax(310px,.72fr);padding-left:34px;padding-right:34px}
  .hero-portrait,.hero-portrait>img,.portrait-placeholder{height:400px;min-height:400px}
  .hero-about-card{grid-template-columns:1fr}
}

@media(max-width:980px){
  .hero-about-card{display:none}
  .site-nav a:after{display:none}
  .site-nav a{padding:12px 16px;border-radius:14px;font-weight:750}
  .site-nav .nav-portfolio{background:var(--pink-soft)}
  .site-nav .nav-shop{background:var(--yellow)}
  .site-nav .nav-contact{background:var(--blue-soft)}
}
