:root { --leaf:#587d37; --forest:#244b32; --dark:#173327; --clay:#c46142; --yellow:#f2db73; --cream:#f5edce; --paper:#fffcf2; --ink:#243b2b; --page:min(1280px,calc(100% - 64px)); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font:16px/1.6 Arial,Helvetica,sans-serif; }
body.menu-open { overflow:hidden; }
a { color:inherit; }
img { display:block; max-width:100%; }
button,input,textarea { font:inherit; }
.skip-link { position:fixed; top:-90px; left:16px; z-index:100; padding:10px 16px; background:var(--yellow); }
.skip-link:focus { top:12px; }
.section { width:var(--page); margin-inline:auto; }
.site-header { position:relative; z-index:20; width:var(--page); min-height:104px; margin:auto; display:grid; grid-template-columns:265px 1fr 95px; gap:20px; align-items:center; border-bottom:1px solid #cdd9bf; }
.brand { width:max-content; display:grid; grid-template-columns:33px 1fr; column-gap:9px; align-items:center; text-decoration:none; line-height:1; }
.brand-symbol { grid-row:1/3; color:var(--clay); font-size:2.4rem; }
.brand strong { font-size:1.26rem; letter-spacing:-.04em; color:var(--forest); }
.brand strong span { font-weight:300; color:var(--leaf); }
.brand small { grid-column:2; margin-top:6px; color:#65765d; font-size:.75rem; letter-spacing:.1em; text-transform:uppercase; }
.main-nav { display:flex; justify-content:center; gap:clamp(18px,3vw,45px); }
.main-nav a { padding:39px 0; text-decoration:none; font-size:.8rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.main-nav a:hover,.main-nav a:focus-visible { color:var(--clay); text-decoration:underline; text-underline-offset:8px; }
.awz-logo { justify-self:end; display:block; width:84px; height:46px; background:url("assets/awz-logo-official.png") center/contain no-repeat; }
.menu-button { display:none; }
.eyebrow { margin:0 0 22px; color:var(--clay); font-size:.76rem; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
h1,h2,h3 { margin-top:0; font-family:Georgia,"Times New Roman",serif; font-weight:400; line-height:1.02; letter-spacing:-.055em; overflow-wrap:break-word; }
h1 { max-width:900px; font-size:clamp(3.6rem,7.2vw,7.8rem); }
h2 { font-size:clamp(2.6rem,5vw,5.4rem); }
h3 { font-size:2.2rem; }
p { overflow-wrap:break-word; }
.button { min-height:50px; display:inline-flex; justify-content:center; align-items:center; gap:26px; padding:13px 22px; border:2px solid transparent; text-decoration:none; font-size:.8rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; cursor:pointer; transition:transform .18s ease; }
.button:hover,.button:focus-visible { transform:translateY(-2px); }
.button-clay { color:#fff; background:var(--clay); }
.button-green { color:#fff; background:var(--forest); }
.button-paper { color:var(--dark); background:var(--paper); }
.under-link { width:max-content; text-decoration-thickness:1px; text-underline-offset:6px; font-weight:800; }

.hero { width:var(--page); margin:auto; padding:82px 0 28px; }
.hero-intro { max-width:1050px; padding-left:clamp(0px,5vw,80px); }
.hero-intro h1 { margin-bottom:26px; }
.hero-intro > p:not(.eyebrow) { max-width:575px; margin-bottom:30px; font-size:1.14rem; }
.hero-actions { display:flex; flex-wrap:wrap; gap:20px 30px; align-items:center; }
.hero-frame { position:relative; width:calc(100% - 100px); margin:80px 0 0 auto; padding:13px; background:#e1e8d3; }
.hero-frame figure { position:relative; margin:0; }
.hero-frame img { width:100%; height:auto; aspect-ratio:1672/941; object-fit:contain; }
figcaption { position:absolute; right:7px; bottom:7px; padding:4px 7px; color:#fff; background:rgba(23,51,39,.82); font-size:.75rem; line-height:1.2; }
.circle-stamp { position:absolute; left:-72px; top:12%; width:145px; height:145px; display:grid; place-content:center; color:var(--dark); background:var(--yellow); border-radius:50%; font:900 .88rem/1.1 Arial,sans-serif; letter-spacing:.1em; text-align:center; transform:rotate(-13deg); }
.hero-footnote { margin:18px 0 0 100px; color:var(--leaf); font:italic 1.25rem Georgia,serif; }

.garden-note { min-height:500px; padding:130px 0 100px; display:grid; grid-template-columns:1.2fr .8fr; gap:70px; align-items:end; }
.garden-note h2 { max-width:760px; }
.garden-intro { max-width:500px; padding-bottom:15px; font-size:1.12rem; }
.garden-intro p:last-child { color:var(--clay); font-weight:800; }
.garden-tiles { margin-bottom:130px; display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.garden-tiles article { min-height:270px; padding:30px; background:#e8eddf; }
.garden-tiles .tile-two { background:var(--cream); }
.garden-tiles .tile-three { background:#f4dfd1; }
.tile-icon { display:block; margin-bottom:45px; color:var(--leaf); font-size:3.2rem; line-height:1; }
.tile-two .tile-icon { color:var(--clay); }
.tile-three .tile-icon { color:#bd6d2e; }
.garden-tiles h3 { margin-bottom:10px; }
.garden-tiles p { max-width:280px; margin:0; }

.buyer { margin-bottom:130px; display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:clamp(40px,6vw,90px); align-items:center; }
.buyer-copy h2 { max-width:600px; }
.buyer-copy p:not(.eyebrow) { max-width:490px; margin-bottom:32px; font-size:1.08rem; }
.buyer-image { position:relative; padding:16px 0 0 16px; border-left:2px solid var(--clay); border-top:2px solid var(--clay); }
.buyer-image figure { position:relative; margin:0; }
.buyer-image img { width:100%; height:auto; aspect-ratio:3/2; object-fit:contain; }
.flower-mark { position:absolute; z-index:2; right:-23px; top:-55px; color:var(--clay); font-size:6rem; line-height:1; transform:rotate(20deg); }

.seller { width:100%; padding:105px 0; background:var(--forest); color:var(--paper); }
.seller-inner { display:grid; grid-template-columns:.55fr 1fr; gap:70px; align-items:center; }
.seller-side { margin:0; color:transparent; -webkit-text-stroke:1px rgba(245,237,206,.7); font:400 clamp(4.6rem,8vw,8.5rem)/.8 Georgia,serif; letter-spacing:-.07em; }
.seller h2 { max-width:820px; }
.seller p:not(.eyebrow):not(.seller-side) { max-width:630px; margin-bottom:32px; color:#dce4d8; font-size:1.08rem; }
.seller .eyebrow { color:var(--yellow); }
.contact { margin-bottom:70px; padding:clamp(45px,6vw,80px); display:grid; grid-template-columns:minmax(250px,.65fr) minmax(0,1.35fr); gap:clamp(45px,7vw,110px); background:var(--cream); }
.contact h2 { margin-bottom:50px; }
.personal-contact { display:flex; flex-direction:column; font-style:normal; }
.personal-contact span { margin-bottom:16px; color:var(--leaf); font-size:.76rem; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.personal-contact strong { font:400 2.2rem Georgia,serif; }
.personal-contact em { margin-bottom:24px; color:var(--clay); font-style:normal; }
.personal-contact a { width:max-content; margin-bottom:5px; text-underline-offset:5px; }
.contact-form { min-width:0; }
.contact-form fieldset { margin:0 0 25px; padding:0; border:0; }
.contact-form legend,.field > span { display:block; margin-bottom:10px; color:var(--forest); font-size:.76rem; font-weight:900; letter-spacing:.09em; text-transform:uppercase; }
.radio-row { display:grid; grid-template-columns:.8fr .8fr 1.5fr; gap:8px; }
.radio-row label { cursor:pointer; }
.radio-row input { position:absolute; opacity:0; pointer-events:none; }
.radio-row span { min-height:47px; display:grid; place-items:center; padding:8px 10px; border:1px solid var(--leaf); color:var(--forest); font-size:.76rem; font-weight:800; text-align:center; }
.radio-row input:checked + span { color:#fff; background:var(--forest); }
.radio-row input:focus-visible + span { outline:3px solid var(--clay); outline-offset:2px; }
.field-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.field { display:block; margin-bottom:18px; }
.field input,.field textarea { width:100%; padding:12px 14px; border:1px solid #aab9a3; border-radius:0; background:var(--paper); color:var(--dark); outline:0; }
.field textarea { min-height:135px; resize:vertical; }
.field input:focus,.field textarea:focus { border-color:var(--clay); box-shadow:0 0 0 2px var(--clay); }
.field textarea::placeholder { color:#637263; }
.consent { display:flex; gap:10px; align-items:flex-start; font-size:.84rem; cursor:pointer; }
.consent input { flex:0 0 auto; width:17px; height:17px; margin-top:4px; accent-color:var(--forest); }
.privacy-note { margin:15px 0 0; color:#52634f; font-size:.82rem; }
.form-status { min-height:24px; margin:10px 0; color:var(--clay); font-weight:800; }
.submit-button { border:0; }
.honeypot { position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.site-footer { width:var(--page); min-height:100px; margin:auto; display:flex; justify-content:space-between; align-items:center; gap:24px; border-top:1px solid #cdd9bf; color:#52634f; font-size:.78rem; }
.site-footer nav { display:flex; flex-wrap:wrap; gap:24px; }
.site-footer a { text-underline-offset:4px; }

@media (min-width:1021px) and (max-width:1100px) {
  .flower-mark { right:5px; }
}
@media (max-width:1020px) {
  :root { --page:min(900px,calc(100% - 40px)); }
  .site-header { grid-template-columns:1fr auto 88px; }
  .menu-button { display:inline-flex; align-items:center; justify-self:end; gap:9px; border:0; padding:10px 0; background:transparent; color:var(--forest); font-size:.8rem; font-weight:900; text-transform:uppercase; cursor:pointer; }
  .menu-button i,.menu-button i::before,.menu-button i::after { display:block; width:22px; height:2px; background:currentColor; transition:transform .2s,opacity .2s; }
  .menu-button i { position:relative; }
  .menu-button i::before,.menu-button i::after { content:""; position:absolute; left:0; }
  .menu-button i::before { top:-7px; }
  .menu-button i::after { top:7px; }
  .menu-button[aria-expanded="true"] i { background:transparent; }
  .menu-button[aria-expanded="true"] i::before { top:0; transform:rotate(45deg); }
  .menu-button[aria-expanded="true"] i::after { top:0; transform:rotate(-45deg); }
  .main-nav { position:absolute; top:104px; left:0; right:0; display:none; padding:18px 24px; flex-direction:column; gap:0; background:var(--forest); color:#fff; }
  .main-nav.open { display:flex; }
  .main-nav a { padding:13px 0; }
  .garden-note { grid-template-columns:1fr; gap:15px; }
  .garden-intro { max-width:700px; }
  .buyer { grid-template-columns:1fr; }
  .buyer-copy { max-width:700px; }
  .buyer-image { width:min(760px,94%); margin-left:auto; }
  .flower-mark { right:5px; }
  .contact { grid-template-columns:1fr; }
}
@media (max-width:680px) {
  :root { --page:calc(100% - 28px); }
  .site-header { min-height:80px; grid-template-columns:minmax(0,1fr) auto 58px; gap:9px; }
  .brand { grid-template-columns:20px 1fr; column-gap:5px; }
  .brand-symbol { font-size:1.6rem; }
  .brand strong { font-size:.93rem; }
  .brand small { font-size:.75rem; letter-spacing:.04em; }
  .awz-logo { width:58px; height:32px; }
  .menu-button span { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }
  .main-nav { top:80px; }
  .hero { padding-top:55px; }
  .hero-intro { padding-left:0; }
  h1 { font-size:clamp(3rem,13vw,4.8rem); }
  h2 { font-size:clamp(2.35rem,10.5vw,3.6rem); }
  .hero-actions { align-items:flex-start; flex-direction:column; }
  .hero-actions .button { width:100%; }
  .hero-frame { width:calc(100% - 12px); margin:76px 0 0 12px; padding:7px; }
  .circle-stamp { left:-10px; top:-42px; width:90px; height:90px; font-size:.57rem; }
  .hero-footnote { margin-left:12px; }
  figcaption { right:4px; bottom:4px; font-size:.75rem; }
  .garden-note { min-height:0; padding:85px 0 65px; }
  .garden-tiles { margin-bottom:90px; grid-template-columns:1fr; }
  .garden-tiles article { min-height:0; padding:25px; }
  .tile-icon { margin-bottom:20px; }
  .buyer { margin-bottom:90px; gap:50px; }
  .buyer-image { width:calc(100% - 12px); margin-left:0; padding:8px 0 0 8px; }
  .flower-mark { right:-4px; top:-37px; font-size:4rem; }
  .seller { padding:75px 0; }
  .seller-inner { grid-template-columns:1fr; gap:32px; }
  .seller-side { font-size:3.8rem; }
  .contact { width:100%; margin-bottom:0; padding:66px 20px; }
  .contact h2 { margin-bottom:32px; }
  .radio-row,.field-grid { grid-template-columns:1fr; }
  .site-footer { padding-block:30px; flex-direction:column; align-items:flex-start; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { transition:none!important; } }
