:root{--cream:#f8f5ed;--paper:#fffdf9;--ink:#30251f;--muted:#756b61;--terra:#b65943;--line:#ddd5ca}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.7 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}button,input,textarea{font:inherit}h1,h2,p{margin:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em;line-height:1.12}h2{font-size:clamp(34px,3.4vw,48px)}.container{width:min(1240px,calc(100% - 112px));margin-inline:auto}.skip-link{position:absolute;left:16px;top:-90px;padding:12px;background:white;z-index:50}.skip-link:focus{top:10px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--terra);outline-offset:5px}.header{background:var(--paper);position:sticky;top:0;z-index:20;border-bottom:1px solid #30251f10}.navigation{width:min(1400px,calc(100% - 88px));margin:auto;min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;gap:8px;align-items:center;font-size:27px;line-height:1;font-weight:600;letter-spacing:-1px}.brand img{mix-blend-mode:multiply}.brand-dot{color:var(--terra)}nav{display:flex;align-items:center;gap:34px;font-size:13px}nav>a{position:relative;padding:12px 0}nav>a[aria-current]:after{content:'';position:absolute;bottom:3px;left:0;right:0;height:2px;background:var(--terra)}nav .nav-contact{border:1px solid #c9b4a3;padding:10px 24px;transition:background .2s}nav .nav-contact:hover{background:#eee4d8}.portrait{height:clamp(430px,38vw,570px);position:relative;isolation:isolate}.portrait-image{width:100%;height:100%;object-fit:cover;object-position:67% 50%;position:absolute;inset:0;z-index:-3}.portrait-shade{position:absolute;inset:0;background:linear-gradient(90deg,#251f19a6 0%,#251f1975 30%,#251f1905 64%);z-index:-2}.portrait-copy{padding-top:clamp(95px,11vw,155px);color:white}.eyebrow{font-size:10px;letter-spacing:.15em;font-weight:600;line-height:1.5;margin-bottom:22px}.portrait h1{font-size:clamp(40px,4.3vw,65px);line-height:1.13;max-width:750px;text-shadow:0 1px 12px #30251f12}.portrait-link{display:inline-flex;gap:22px;align-items:center;font-size:12px;border-bottom:1px solid #ffffff80;padding-bottom:8px;margin-top:30px}.portrait-link svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.4}.accent-bar{position:absolute;pointer-events:none;background:#c4654c;z-index:1}.accent-bar-left{left:4%;bottom:-99px;width:11px;height:170px}.accent-bar-right{right:5%;bottom:-67px;width:200px;height:150px;background:transparent;border-right:11px solid #c4654c;border-top:11px solid #c4654c}.introduction{position:relative;z-index:3;margin-top:-45px}.intro-panel{width:84%;background:var(--paper);padding:48px 56px 42px;box-shadow:0 2px 15px #30251f04}.intro-panel .eyebrow{color:#94745f}.intro-panel h2{font-size:43px}.intro-lead{font-size:22px;line-height:1.55;max-width:690px;margin-top:22px;letter-spacing:-.02em}.intro-columns{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:26px}.intro-columns p{font-size:14px;color:var(--muted);line-height:1.8}.intro-signature{margin-top:30px;padding-top:23px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.signature-name{font-family:Georgia,serif;font-size:20px}.intro-signature>span:last-child{font-size:11px;color:var(--muted)}.image-credit{text-align:right;font-size:9px;color:#8e8071;margin-top:12px}.contact-section{padding:85px 0 95px}.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px}.contact-copy{padding-top:8px}.contact-copy .eyebrow{color:#94745f}.contact-copy h2{font-size:46px;margin-bottom:25px}.contact-copy>p:not(.eyebrow){font-size:14px;max-width:350px;color:var(--muted)}.contact-details{margin-top:35px;padding-top:26px;border-top:1px solid var(--line);display:flex;flex-direction:column;align-items:flex-start;gap:7px;font-size:14px}.contact-details>span{font-size:11px;color:var(--muted)}.contact-details strong{font-size:16px;font-weight:500}.contact-details a{color:var(--terra);border-bottom:1px solid #c9b4a3;margin:5px 0}.contact-copy .no-obligation{font-size:11px!important;margin-top:26px}.contact-form{position:relative}.required-note{font-size:10px;color:var(--muted);margin-bottom:19px}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:22px}.field{margin-bottom:24px}.field label{font-size:12px;display:block;margin-bottom:8px}.field label span{font-size:10px;color:var(--muted);margin-left:5px}.field input,.field textarea{display:block;width:100%;border:1px solid #cfc5b8;background:var(--paper);padding:12px 14px;border-radius:0;color:var(--ink);font-size:14px;min-height:47px}.field input:focus,.field textarea:focus{border-color:var(--terra)}.field textarea{min-height:155px;resize:vertical;line-height:1.6}.field textarea::placeholder{color:#9b8e81;font-size:13px}.privacy-note{font-size:10px;line-height:1.8;color:var(--muted);max-width:490px;margin:0 0 24px}.privacy-note a{border-bottom:1px solid #b9a38e}.form-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.send-row{display:flex;align-items:center;gap:25px;position:relative;min-height:52px}.send-button{background:var(--ink);color:white;border:1px solid var(--ink);min-width:185px;min-height:50px;padding:12px 21px;display:inline-flex;align-items:center;justify-content:space-between;gap:35px;font-size:13px;cursor:pointer;transition:background .2s}.send-button:hover{background:#a5513d;border-color:#a5513d}.send-button:disabled{cursor:wait;opacity:.7}.send-button.is-sent{background:#5b6451;border-color:#5b6451;opacity:1;cursor:default}.button-arrow{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.4}.send-caption{font-size:10px;color:var(--muted)}.form-status{font-size:12px;margin-top:17px;min-height:24px;line-height:1.6;max-width:490px}.form-status[data-state=error]{color:#9b342a}.form-status[data-state=success]{color:#4d5a41}.flying-kite{position:absolute;width:47px;height:65px;left:138px;bottom:15px;opacity:0;pointer-events:none;transform:translateY(10px) rotate(-10deg)}.kite-tail,.kite-fold{fill:none;stroke:var(--ink);stroke-width:1.2;stroke-linecap:round}.kite-tail{stroke-width:1.4}.flying-kite.is-flying{animation:kite-rise 1.9s cubic-bezier(.2,.6,.3,1) forwards}@keyframes kite-rise{0%{opacity:0;transform:translate(0,12px) rotate(-12deg)}12%{opacity:1}40%{opacity:1;transform:translate(19px,-60px) rotate(5deg)}75%{opacity:1;transform:translate(48px,-142px) rotate(-6deg)}100%{opacity:0;transform:translate(75px,-220px) rotate(5deg)}}.footer{border-top:1px solid var(--line);padding:30px 0 23px;background:var(--paper)}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-bottom:26px}.footer-top .brand{font-size:23px}.footer-top p{font-family:Georgia,serif;font-style:italic;font-size:16px;color:var(--muted)}.footer-top>a:last-child{font-size:12px}.footer-bottom{border-top:1px solid var(--line);padding-top:18px;font-size:10px;display:flex;justify-content:space-between;gap:20px;color:var(--muted)}.footer-bottom>div{display:flex;gap:22px}
@media(min-width:1700px){.portrait-copy{padding-top:170px}.portrait h1{font-size:68px}}@media(max-width:1050px){.container{width:calc(100% - 72px)}.navigation{width:calc(100% - 60px)}nav{gap:24px}.portrait h1{font-size:48px;max-width:620px}.portrait-copy{padding-top:125px}.intro-panel{width:89%;padding:38px}.contact-layout{gap:55px}.contact-copy h2{font-size:40px}.intro-lead{font-size:20px}.intro-columns{gap:25px}.accent-bar-right{right:4%;width:160px}.footer-top p{font-size:14px}}
@media(max-width:700px){html{scroll-padding-top:125px}.container{width:calc(100% - 40px)}.navigation{width:calc(100% - 32px);min-height:110px;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px;padding:13px 0}.brand{font-size:23px}.brand img{width:34px;height:34px}nav{width:100%;justify-content:space-between;gap:12px;font-size:11px}nav>a{padding:8px 0}nav .nav-contact{padding:7px 12px}.portrait{height:530px}.portrait-image{object-position:67% 50%}.portrait-shade{background:linear-gradient(0deg,#251f19ba 0%,#251f1950 32%,#251f1900 65%)}.portrait-copy{padding-top:325px}.portrait .eyebrow{font-size:8px;margin-bottom:13px}.portrait h1{font-size:35px;max-width:390px}.portrait-link{font-size:11px;margin-top:19px}.accent-bar-left{left:10px;bottom:-74px;height:115px;width:6px}.accent-bar-right{right:10px;bottom:-50px;width:90px;height:90px;border-width:6px}.introduction{margin-top:-20px}.intro-panel{width:100%;padding:29px 25px 25px}.intro-panel .eyebrow{font-size:8px;margin-bottom:16px}.intro-panel h2{font-size:34px}.intro-lead{font-size:19px;margin-top:18px}.intro-columns{grid-template-columns:1fr;gap:15px;margin-top:22px}.intro-columns p{font-size:13px}.intro-signature{flex-direction:column;align-items:flex-start;gap:7px;margin-top:23px;padding-top:20px}.signature-name{font-size:20px}.intro-signature>span:last-child{font-size:10px}.image-credit{font-size:8px;margin-top:9px}.contact-section{padding:55px 0 60px}.contact-layout{grid-template-columns:1fr;gap:35px}.contact-copy .eyebrow{font-size:9px;margin-bottom:18px}.contact-copy h2{font-size:39px;margin-bottom:20px}.contact-copy>p:not(.eyebrow){font-size:13px;max-width:100%}.contact-details{margin-top:25px;padding-top:20px}.contact-copy .no-obligation{margin-top:17px}.form-pair{grid-template-columns:1fr;gap:0}.field{margin-bottom:20px}.privacy-note{font-size:10px}.send-row{gap:20px}.send-button{min-width:180px}.send-caption{font-size:9px}.footer-top{flex-wrap:wrap;gap:20px}.footer-top p{width:100%;order:3}.footer-top .brand{font-size:21px}.footer-top>a:last-child{font-size:10px}.footer-bottom{flex-wrap:wrap;font-size:9px;gap:15px}.footer-bottom>div{gap:17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}.flying-kite.is-flying{animation:none;opacity:1;transform:translate(20px,-35px)}}

/* Desktop composition: centered copy framed by two opposing open corners. */
@media(min-width:1051px){
  .portrait-contact{background:var(--terra);border:1px solid var(--terra);padding:14px 25px;min-height:52px;gap:34px;font-size:14px;margin-top:30px;transition:background .25s ease,box-shadow .25s ease}
  .portrait-contact:hover{background:#9d4936;box-shadow:0 4px 18px #30251f20}
  .portrait-contact svg{transform:rotate(-90deg);transition:transform .3s ease}
  .portrait-contact:hover svg{transform:translateX(4px) rotate(-90deg)}
  .portrait>.accent-bar{display:none}
  .introduction{isolation:isolate;margin-top:-45px}
  .intro-panel{width:84%;margin-inline:auto;position:relative;z-index:1;padding:52px 56px 44px}
  .introduction:before,.introduction:after{content:'';position:absolute;pointer-events:none;border:12px solid #c4654c;z-index:2}
  .introduction:before{content:none}
  .intro-panel:before{content:"";position:absolute;left:-12px;top:0;bottom:0;width:12px;background:#c4654c;pointer-events:none}
  body{overflow-x:clip}
  .introduction:after{left:calc(92% + 28px);right:calc((100% - 100vw)/2);top:-38px;height:235px;border-right:0;border-bottom:0}
  .image-credit{width:84%;margin-inline:auto}
}
/* Original brand logo, carried by a continuous gust with two soft dips. */
.flying-kite{width:64px;height:64px;object-fit:contain;left:138px;bottom:15px;opacity:0;transform:none;filter:drop-shadow(0 3px 5px #30251f12)}
.flying-kite.is-flying{offset-path:path('M 0 0 C 18 -55, 55 -95, 75 -70 C 95 -45, 110 -145, 145 -130 C 180 -115, 190 -210, 245 -245');offset-anchor:50% 50%;offset-rotate:0deg;opacity:1;animation:kite-wind-path 3.6s linear forwards,kite-wind-fade 1.6s ease-in 2s forwards,kite-wind-sway 1.4s ease-in-out infinite alternate;will-change:offset-distance,opacity,transform}
@keyframes kite-wind-path{0%{offset-distance:0%;opacity:0}6%{opacity:1}100%{offset-distance:100%;opacity:1}}
@keyframes kite-wind-fade{from{opacity:1}to{opacity:0}}
@keyframes kite-wind-sway{from{transform:rotate(-9deg) scale(.95)}to{transform:rotate(7deg) scale(1)}}
@media(prefers-reduced-motion:reduce){.flying-kite.is-flying{offset-path:none;animation:kite-wind-fade 1.6s ease-in 2s forwards;opacity:1;transform:translate(25px,-30px)}}

/* Keep the send button visually stable during and after submission. */
.send-button:hover,.send-button:disabled,.send-button:disabled:hover{background:var(--ink);border-color:var(--ink);color:white;opacity:1}
.send-button:disabled{cursor:default}
