
:root{
  --ink:#191713; --paper:#f6efdf; --paper2:#efe0c5; --orange:#d65019; --red:#b3221d; --olive:#62723c; --teal:#377b65; --mustard:#d8a928; --shadow:#2a2118;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;color:var(--ink);font-family:Arial, Helvetica, sans-serif;background:var(--paper);}
body:before{content:"";position:fixed;inset:0;z-index:-2;background:radial-gradient(circle at 18% 12%, rgba(92,50,18,.11), transparent 16rem),radial-gradient(circle at 82% 18%, rgba(214,80,25,.09), transparent 12rem),radial-gradient(circle at 30% 88%, rgba(55,123,101,.08), transparent 18rem),linear-gradient(115deg,var(--paper),#f9f3e6 48%,var(--paper2));}
body:after{content:"";position:fixed;inset:0;z-index:-1;opacity:.23;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23n)' opacity='.34'/%3E%3C/svg%3E");mix-blend-mode:multiply;}
a{color:inherit}.site-header{position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:.75rem clamp(1rem,4vw,3rem);background:rgba(246,239,223,.92);backdrop-filter:blur(9px);border-bottom:3px solid var(--ink)}
.brand{display:flex;align-items:center;gap:.75rem;text-decoration:none;text-transform:uppercase;letter-spacing:.16em;font-weight:900}.brand img{width:48px;height:48px;object-fit:contain}.site-header nav{display:flex;gap:1.1rem;align-items:center;font-weight:900;text-transform:uppercase;font-size:.82rem}.site-header nav a{text-decoration:none}.site-header nav a:hover{color:var(--orange)}
.section-pad{padding:clamp(2.5rem,7vw,6rem) clamp(1rem,5vw,4rem)}.compact{padding-top:clamp(1.6rem,4vw,3rem)}
.hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.78fr);gap:clamp(2rem,5vw,5rem);align-items:center;min-height:calc(100vh - 78px)}.eyebrow{text-transform:uppercase;letter-spacing:.25em;font-weight:900;font-size:.78rem;color:var(--olive);margin:0 0 .85rem}.hero-logo{width:116px;margin:.35rem 0 1rem}.shadow-title{font-family:Georgia, 'Cooper Black', serif;font-weight:900;line-height:.88;letter-spacing:-.055em;font-size:clamp(4rem,11vw,9rem);margin:.1rem 0 .9rem;color:var(--ink);text-shadow:4px 4px 0 var(--mustard),8px 8px 0 var(--orange),12px 12px 0 rgba(55,123,101,.85)}.shadow-title.small{font-size:clamp(2.45rem,6vw,5rem);line-height:.92;text-shadow:3px 3px 0 var(--mustard),6px 6px 0 var(--orange)}.hero-sub{font-family:Georgia,serif;font-size:clamp(1.35rem,3vw,2.2rem);font-weight:900;max-width:780px}.location{font-weight:900;text-transform:uppercase;letter-spacing:.08em}.hero-actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.4rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:1rem 1.35rem;border:3px solid var(--ink);text-decoration:none;text-transform:uppercase;font-weight:1000;letter-spacing:.04em;box-shadow:7px 7px 0 var(--shadow);transition:.15s transform,.15s box-shadow;background:white}.btn:hover{transform:translate(3px,3px);box-shadow:4px 4px 0 var(--shadow)}.btn-primary{background:var(--orange);color:white}.btn-secondary{background:#fff8e8;color:var(--ink)}
.paper-card{background:white;border:4px solid var(--ink);padding:.65rem;box-shadow:13px 13px 0 var(--shadow),18px 18px 0 rgba(214,80,25,.65);transform:rotate(1deg)}.paper-card img{display:block;width:100%;height:auto}.paper-card figcaption{text-align:center;margin:.65rem 0 .2rem;text-transform:uppercase;font-size:.75rem;font-weight:900;letter-spacing:.16em;color:var(--olive)}
.section-heading{text-align:center;max-width:900px;margin:0 auto 2rem}.section-heading p:not(.eyebrow){font-size:1.1rem;font-weight:700}.carousel-wrap{position:relative}.carousel{display:flex;gap:1.2rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:1rem .4rem 2rem;scrollbar-color:var(--orange) transparent}.slide{scroll-snap-align:start;flex:0 0 min(78vw,360px);margin:0;background:white;border:3px solid var(--ink);box-shadow:8px 8px 0 var(--orange);padding:.5rem}.slide img{width:100%;height:440px;object-fit:cover;display:block}.arrow{position:absolute;top:42%;z-index:3;border:3px solid var(--ink);background:var(--mustard);font-size:3rem;line-height:1;width:3.4rem;height:3.4rem;box-shadow:5px 5px 0 var(--ink);cursor:pointer}.prev{left:-.7rem}.next{right:-.7rem}
.start{padding-top:1rem}.start-card{display:grid;grid-template-columns:.75fr 1.25fr;gap:2rem;background:rgba(255,255,255,.58);border:4px solid var(--ink);box-shadow:12px 12px 0 var(--olive);padding:clamp(1.2rem,4vw,3rem)}.start-card p{font-size:1.12rem;line-height:1.55}.consult-form{display:grid;gap:1rem}.consult-form label{display:grid;gap:.4rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em;font-size:.8rem}.consult-form input,.consult-form textarea,.consult-form select{width:100%;border:3px solid var(--ink);background:#fffdf6;padding:.9rem;font:inherit;font-size:1rem}.form-note{font-size:.9rem!important;font-weight:800;color:var(--olive)}
.meet{display:grid;grid-template-columns:.82fr 1fr;gap:3rem;align-items:center}.meet-copy p:not(.eyebrow){font-size:1.18rem;line-height:1.65;font-weight:700}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.gallery-card{margin:0;background:white;border:3px solid var(--ink);padding:.45rem;box-shadow:6px 6px 0 var(--orange)}.gallery-card:nth-child(2n){box-shadow:6px 6px 0 var(--teal);transform:rotate(.8deg)}.gallery-card:nth-child(3n){box-shadow:6px 6px 0 var(--mustard);transform:rotate(-.6deg)}.gallery-card img{display:block;width:100%;height:310px;object-fit:cover}.note-card{max-width:940px;margin:auto;background:#fff8e8;border:4px solid var(--ink);box-shadow:10px 10px 0 var(--orange);padding:2rem}footer{text-align:center;padding:3rem 1rem 6rem;border-top:3px solid var(--ink);font-weight:900}footer img{width:80px}.tagline{text-transform:uppercase;letter-spacing:.16em;color:var(--olive)}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.88);display:none;align-items:center;justify-content:center;z-index:30;padding:1rem}.lightbox.open{display:flex}.lightbox img{max-width:94vw;max-height:90vh}.lightbox button{position:absolute;top:1rem;right:1rem;font-size:2rem;background:white;border:0;width:3rem;height:3rem}.sticky-book{position:fixed;right:1rem;bottom:1rem;z-index:20;background:var(--red);color:white;text-decoration:none;text-transform:uppercase;font-weight:1000;border:3px solid var(--ink);padding:.9rem 1rem;box-shadow:6px 6px 0 var(--ink)}
@media (max-width:900px){.site-header{align-items:flex-start}.site-header nav{display:none}.hero,.start-card,.meet{grid-template-columns:1fr}.hero{min-height:auto}.shadow-title{font-size:clamp(3.3rem,17vw,6rem)}.hero-photo{order:-1}.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-card img{height:245px}.slide img{height:380px}.arrow{display:none}}
@media (max-width:520px){.section-pad{padding-left:1rem;padding-right:1rem}.brand span{font-size:.8rem}.hero-logo{width:90px}.gallery-grid{grid-template-columns:1fr}.gallery-card img{height:auto}.slide{flex-basis:86vw}.slide img{height:360px}.sticky-book{left:1rem;text-align:center}.paper-card{box-shadow:8px 8px 0 var(--shadow),12px 12px 0 rgba(214,80,25,.65)}}
