@charset "UTF-8";
:root{--paper:#f7f5ef;--warm:#e8e3d9;--ink:#2a2825;--muted:#666159;--line:#c5bfb4;--white:#fffefa;scroll-behavior:smooth}
*{box-sizing:border-box}html{scroll-padding-top:24px}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.6 Arial,Helvetica,sans-serif;background-image:repeating-linear-gradient(0deg,transparent 0,transparent 6px,rgba(70,62,48,.012) 7px)}body:has(dialog[open]){overflow:hidden}a{color:inherit}img{display:block;width:100%;height:auto}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #7d6648;outline-offset:4px}.wrap{width:min(calc(100% - 36px),1240px);margin-inline:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.045em;line-height:1.1}em{font-weight:400}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.site-header{height:72px;display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid var(--line)}.site-header a{text-decoration:none}.brand{font-size:.82rem;font-weight:700;letter-spacing:.075em;text-transform:uppercase;white-space:nowrap}.brand span{padding-inline:.3em;color:#9c9386}.site-header nav{display:flex;gap:2rem;font-size:.87rem;white-space:nowrap}.site-header nav a:not(:last-child){display:none}.site-header nav a:last-child{border-bottom:1px solid currentColor}.hero{padding-block:58px 95px;border-bottom:1px solid var(--line)}.hero h1{font-size:clamp(3rem,11.7vw,5.2rem);margin:35px 0 32px}.hero h1 em{font-style:italic}.hero-subtitle{font-size:1.12rem;line-height:1.55;max-width:630px;margin-bottom:34px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:25px;border:0;background:var(--ink);color:var(--white);text-decoration:none;min-height:62px;padding:14px 23px;font-size:.94rem;font-weight:700;line-height:1.35;cursor:pointer;transition:transform .2s,background .2s}.button:hover{background:#504b45;transform:translateY(-2px)}.button span{font-size:1.45rem;line-height:1;font-weight:400}.microcopy{max-width:540px;color:var(--muted);font-size:.88rem;line-height:1.55;margin-top:18px}.hero-image{max-width:690px;margin-top:60px}.sheet{display:block;position:relative;background:var(--white);padding:10px;box-shadow:12px 17px 25px rgba(42,35,29,.11)}.sheet-tilt-left{transform:rotate(-1.2deg)}.sheet-tilt-right{transform:rotate(1.2deg)}figure.sheet figcaption{position:absolute;bottom:-35px;left:10px;color:var(--muted);font:italic 1rem Georgia,serif}.hero-image img{aspect-ratio:1280/958;object-fit:cover}
.portfolio{padding-block:100px 95px}.portfolio>h2{font-size:clamp(2.85rem,7.4vw,4.5rem);margin:34px 0 65px}.portfolio>h2 em{font-style:italic}.proof-main img{aspect-ratio:1280/853;object-fit:cover}.proof-layout{display:grid;gap:80px}.proof-main{align-self:start}.proof-main figcaption{font-family:Arial,Helvetica,sans-serif!important;font-size:.72rem!important;font-style:normal!important;font-weight:700!important;letter-spacing:.08em;text-transform:uppercase}.proof-aside{display:grid;grid-template-columns:1fr 125px;gap:20px;align-items:end}.proof-aside>p{font-size:1.03rem;line-height:1.7}.detail{max-width:220px}.detail img{aspect-ratio:1;object-fit:cover}.detail figcaption{font-family:Arial,Helvetica,sans-serif!important;font-size:.68rem!important;font-style:normal!important;font-weight:700!important;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.photo-note{margin:130px 0 70px}.photo-note h3{font-size:clamp(2.4rem,5.5vw,3.8rem);margin-bottom:27px}.photo-note p{max-width:1100px;font-size:1.08rem;line-height:1.7}.photo-note .emphasis{font-size:1rem;font-weight:700;margin-top:27px}.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px;row-gap:70px;align-items:start}.gallery-item{min-width:0}.gallery-item button{width:100%;text-align:left;cursor:zoom-in}.gallery-item button:hover{filter:contrast(1.06)}.gallery-item img{aspect-ratio:1;object-fit:cover}.gallery-item figcaption{font-size:.68rem;text-transform:uppercase;font-weight:700;letter-spacing:.08em;color:var(--muted);margin-top:29px}.gallery-item.item-b{margin-top:55px}.gallery-item.item-d{margin-top:40px}.gallery-item.item-e{margin-top:20px}.gallery-item.item-f{margin-top:95px}.gallery-item.item-f img{aspect-ratio:1280/958}.gallery-cta{margin-top:78px}
.gift{background:var(--warm);padding-block:95px}.gift-inner{display:grid;gap:80px}.gift-image{width:min(65%,360px);margin:0 0 0 12px}.gift-image img{aspect-ratio:959/1280;object-fit:cover}.gift-copy h2{font-size:clamp(2.55rem,5.9vw,3.8rem);margin:25px 0 35px}.gift-copy h2 em{font-style:italic}.gift-copy>p:not(.eyebrow){font-size:1.08rem;line-height:1.7;max-width:770px;margin-top:18px}
.prices{padding-block:110px 115px;display:grid;gap:45px}.price-heading h2{font-size:clamp(3.1rem,6.6vw,4.5rem);margin-top:32px}.price-list{margin:0}.price-list>div{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:24px 0}.price-list>div:last-child{border-bottom:1px solid var(--line)}.price-list dt{font-size:1.06rem}.price-list dd{font:1.35rem Georgia,serif;margin:0;text-align:right}.price-content>p{font-size:1rem;margin-top:25px}.price-content>.price-small{color:var(--muted);font-size:.91rem;margin-top:14px}.price-content .button{margin-top:34px}
.process{background:var(--warm);padding-block:95px 100px}.process h2{font-size:clamp(2.65rem,5.6vw,3.7rem);margin:27px 0 70px}.process ol{padding:0;margin:0;list-style:none;display:grid;gap:35px}.process li{border-top:1px solid var(--ink);padding-top:18px}.step-no{font:italic 1.55rem Georgia,serif;color:var(--muted)}.process h3{font-size:2rem;margin:24px 0 14px}.process li p{font-size:1rem;line-height:1.65;max-width:340px}.about{padding-block:95px 100px;display:grid;gap:25px;border-bottom:1px solid var(--line)}.about h2{font-size:clamp(3.5rem,6vw,5rem);margin-top:18px}.about>p{font-size:1.17rem;line-height:1.7;max-width:780px}
.contact{background:var(--ink);color:var(--white);padding-block:95px 110px}.contact .eyebrow{color:#bcb5a9}.contact h2{font-size:clamp(2.7rem,5.6vw,4.2rem);margin:24px 0 25px}.contact h2 em{font-style:italic}.contact-intro{font-size:1.1rem;color:#e5e0d7}.contact form{margin-top:46px}.contact label{display:block;font-size:.9rem;margin-bottom:14px}.form-row{display:grid;gap:12px}.form-row input{width:100%;min-width:0;min-height:64px;border:1px solid #ded9d0;border-radius:0;background:var(--white);color:var(--ink);padding:16px 18px;font-size:1rem}.form-row input::placeholder{color:#827d74}.form-row input[aria-invalid="true"]{border-color:#aa604f}.form-row button{background:var(--white);color:var(--ink);text-align:left;min-height:64px}.form-row button:hover{background:#e6ded0}.form-row button:disabled{opacity:.55;cursor:wait;transform:none}.form-message{color:#ffe0d9;margin-top:13px;font-size:.92rem}.form-success{color:#f0e8d9;margin-top:15px;font-size:1.05rem}.contact-note{color:#bcb5a9;font-size:.84rem;margin-top:17px}dialog{width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:52px 12px 25px;border:0;background:rgba(26,25,23,.95);color:#fff;overflow:auto}dialog::backdrop{background:rgba(26,25,23,.95)}dialog img{width:auto;max-width:100%;max-height:calc(100dvh - 80px);object-fit:contain;margin:auto}.dialog-close{position:fixed;right:20px;top:10px;background:none;border:0;color:white;font-size:2.5rem;cursor:pointer}
@media(min-width:680px){.wrap{width:min(calc(100% - 64px),1240px)}.site-header nav a:not(:last-child){display:inline}.hero{display:grid;grid-template-columns:1.12fr .88fr;align-items:center;gap:35px;min-height:700px}.hero-image{margin:0}.hero h1{font-size:clamp(3.4rem,5.6vw,5.2rem)}.hero-copy{position:relative;z-index:1}.hero-subtitle{max-width:590px}.gallery{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:20px;row-gap:80px}.item-a{grid-column:1/7}.item-b{grid-column:9/13}.item-c{grid-column:2/6}.item-d{grid-column:8/13}.item-e{grid-column:1/7}.item-f{grid-column:9/13}.gift-inner{grid-template-columns:34% 1fr;align-items:center;gap:5%}.gift-image{width:min(100% - 15px,380px)}.prices{grid-template-columns:42% 1fr;gap:5%}.process ol{grid-template-columns:repeat(3,1fr);gap:30px}.about{grid-template-columns:35% 1fr;align-items:center}.form-row{grid-template-columns:minmax(250px,470px) minmax(320px,500px);gap:20px}}
@media(min-width:1050px){.hero{min-height:770px}.hero h1{font-size:clamp(4.2rem,5.55vw,5.45rem);margin-top:43px}.hero-image{transform:rotate(-1.7deg)}.portfolio{padding-top:95px}.proof-layout{grid-template-columns:minmax(0,2.6fr) minmax(250px,1fr);gap:6%;align-items:center}.proof-aside{display:flex;flex-direction:column;align-items:flex-start;gap:50px;padding-top:10px}.proof-aside>p{font-size:1.08rem}.detail{width:75%;align-self:center}.photo-note{margin-top:140px}.gallery{row-gap:95px}.item-c{margin-top:30px}.item-d{margin-top:0}.item-f{margin-top:65px}.gift{padding-block:120px}.prices{padding-block:140px}.process{padding-block:110px 125px}}
@media(max-width:679px){.site-header{height:66px}.brand{font-size:1rem;letter-spacing:.04em}.brand-extra{display:none}.site-header nav{font-size:.87rem}.hero h1{letter-spacing:-.055em}.hero .button{width:100%;max-width:420px}.hero-image{margin-top:62px}.portfolio>h2 br{display:none}.proof-layout{gap:55px}.proof-aside{align-items:start}.proof-aside>p{grid-column:1/3}.proof-aside .detail{grid-column:2;grid-row:2;width:100%;margin-top:10px}.proof-aside .detail figcaption{white-space:normal}.photo-note{margin-top:115px}.gallery-item figcaption{font-size:.75rem;line-height:1.3}.gift-image{margin-bottom:20px}.price-list dd{font-size:1.14rem;white-space:nowrap}.price-list dt{font-size:.93rem}.contact h2 br{display:none}}
@media(max-width:360px){.hero h1{font-size:2.85rem}.button{font-size:.87rem}.proof-aside{grid-template-columns:1fr 115px}.price-list dd{font-size:1rem}}

@media(max-width:679px){
  .gallery .item-a{grid-column:1/3;grid-row:1;width:76%}
  .gallery .item-b{grid-column:2;grid-row:2;margin-top:-75px}
  .gallery .item-c{grid-column:1;grid-row:2;margin-top:90px}
  .gallery .item-d{grid-column:2;grid-row:3;margin-top:5px}
  .gallery .item-e{grid-column:1;grid-row:3;margin-top:85px}
  .gallery .item-f{grid-column:1/3;grid-row:4;width:76%;margin:10px 0 0 auto}
}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Mobile fixes 2026-10-02 */
@media(max-width:679px){
  html,
  body{
    width:100%;
    max-width:100%;
    overflow-x:hidden;
  }

  .portfolio>h2 br,
  .contact h2 br{
    display:block;
  }

  .portfolio>h2{
    font-size:2.7rem;
    line-height:1.06;
    letter-spacing:-.05em;
  }

  .process h2{
    font-size:2.45rem;
    line-height:1.08;
  }

  .contact h2{
    font-size:2.55rem;
    line-height:1.06;
    letter-spacing:-.045em;
  }
}
