/* Two Acorns Event Rentals — stylesheet */
:root{--primary:#2C4C38;--primary-dark:#203929;--accent:#D49B4B;--dark:#26211E;--gray:#62645f;--light:#F8F6F0;--white:#fff;--radius:10px;--shadow:0 4px 14px rgba(38,33,30,.08);--shadow-lg:0 12px 32px rgba(38,33,30,.12);--transition:all .25s ease}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;color:var(--dark);line-height:1.65;background:var(--white)}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
.container{width:100%;max-width:1140px;margin:0 auto;padding:0 22px}
.section{padding:76px 0}
.section-alt{background:var(--light)}
.section-title{font-size:clamp(1.8rem,3vw,2.35rem);font-weight:800;color:var(--primary);margin-bottom:12px;text-align:center}
.section-subtitle{text-align:center;color:var(--gray);margin:0 auto 38px;max-width:680px;font-size:1.08rem}
.btn{display:inline-block;background:var(--primary);color:var(--white);padding:13px 25px;border-radius:var(--radius);font-weight:700;border:2px solid var(--primary);cursor:pointer;transition:var(--transition);text-align:center}
.btn:hover{background:var(--primary-dark);border-color:var(--primary-dark)}
.btn:disabled{opacity:.65;cursor:wait}
.btn-full{width:100%}
.btn:focus-visible,.lang-btn:focus-visible,.nav-toggle:focus-visible,.main-nav a:focus-visible,.footer-links a:focus-visible,.contact-link:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.site-header{position:sticky;top:0;background:rgba(255,255,255,.97);box-shadow:0 2px 12px rgba(0,0,0,.06);z-index:1000;min-height:82px;display:flex;align-items:center}
.nav-bar{display:flex;justify-content:space-between;align-items:center;gap:20px}
.logo{display:flex;align-items:center;gap:12px;font-weight:850;font-size:1.12rem;color:var(--primary)}
/* Logo scales with its height; no max-width cap so it is never squeezed */
.logo-img{height:56px;width:auto;max-width:none;flex-shrink:0;object-fit:contain;display:block}
.main-nav{display:flex;gap:24px;align-items:center}
.main-nav a{font-weight:650;font-size:.94rem;transition:var(--transition)}
.main-nav a:hover,.footer-links a:hover{color:var(--accent)}
.nav-toggle{display:none;background:none;border:0;cursor:pointer;flex-direction:column;gap:5px;padding:8px}
.nav-toggle span{display:block;width:26px;height:3px;background:var(--dark);border-radius:2px}
.hero{background:linear-gradient(120deg,rgba(32,57,41,.94),rgba(38,33,30,.78));color:white;text-align:center;padding:clamp(80px,12vw,140px) 20px}
.hero-content h1{font-size:clamp(2.3rem,5vw,3.6rem);line-height:1.12;font-weight:900;margin:12px 0 20px}
.hero-content>p:not(.eyebrow){font-size:1.15rem;max-width:700px;margin:0 auto 28px;opacity:.96}
.eyebrow{font-weight:750;letter-spacing:.04em;color:#f2d7ae}
.rental-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:22px}
.rental-card{background:white;padding:30px 24px;border-radius:var(--radius);box-shadow:var(--shadow);text-align:center;border:1px solid #ece9e2}
.rental-icon{font-size:2.5rem;margin-bottom:10px}
.rental-card h3{font-size:1.2rem;color:var(--primary);margin-bottom:8px}
.rental-card p{color:var(--gray)}
.rental-card .price{font-weight:800;color:var(--primary);margin:7px 0 10px}
.inventory-note{text-align:center;color:var(--gray);margin-top:28px}
.about-grid{max-width:820px;text-align:center}
.about-grid p{font-size:1.1rem;margin:12px 0}
.service-area{color:var(--gray)}
.tagline{font-weight:800;color:var(--primary)}
/* Photo gallery */
.photo-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}
.photo-item{position:relative;margin:0;overflow:hidden;border-radius:var(--radius);background:#e9e6df;aspect-ratio:4/3;box-shadow:var(--shadow)}
.photo-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.photo-item:hover img{transform:scale(1.04)}
.photo-item figcaption{position:absolute;left:0;right:0;bottom:0;padding:26px 16px 12px;color:#fff;font-weight:700;font-size:.95rem;background:linear-gradient(to top,rgba(0,0,0,.68),rgba(0,0,0,0))}
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;align-items:start}
.contact-info .section-title{text-align:left}
.contact-info>p{margin:12px 0;color:var(--gray)}
.contact-details{margin-top:24px}.contact-details p{margin-bottom:12px}
.contact-link{color:var(--primary);font-weight:750;text-decoration:underline;text-underline-offset:3px}
.small-note{font-size:.95rem}
.form-panel,.rental-agreement-form{background:var(--white);padding:clamp(22px,4vw,38px);border-radius:var(--radius);box-shadow:var(--shadow-lg);border:1px solid #eee9df}
.language-toggle{display:flex;justify-content:center;gap:10px;margin-bottom:22px}
.lang-btn{background:white;color:var(--primary);border:2px solid var(--primary);padding:8px 23px;font-weight:750;border-radius:30px;cursor:pointer;transition:var(--transition)}
.lang-btn.active,.lang-btn:hover{background:var(--primary);color:white}
.form-group{margin-bottom:18px}
.form-group label{display:block;font-weight:700;margin-bottom:7px;font-size:.95rem}
.form-group input,.form-group textarea{width:100%;padding:12px;border:1px solid #d8d8d2;border-radius:8px;font-size:1rem;background:#fff}
.form-group input::placeholder,.form-group textarea::placeholder{color:#9a9a94}
.form-group input:focus,.form-group textarea:focus{outline:3px solid rgba(44,76,56,.14);border-color:var(--primary)}
.form-row,.ra-field-row,.ra-items-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.field-hint,.form-disclaimer{font-size:.85rem;color:var(--gray);margin:0 0 14px}
.form-disclaimer{margin:14px 0 0}
.form-status{margin-top:14px;padding:12px;border-radius:8px;font-weight:700;background:#fff4df;color:#60451f}
.form-status.error{background:#fde9e7;color:#8b1d14}
.form-status.sent{background:#e8f3e9;color:#205c2d}
.submission-frame{position:absolute;width:1px;height:1px;left:-10000px;border:0}
.honeypot{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.rental-agreement-form{max-width:860px;margin:0 auto}
.ra-lang-content[hidden]{display:none!important}
.ra-section{margin-bottom:30px;padding-bottom:24px;border-bottom:1px solid #e9e6de}
.ra-section-title{font-size:1.2rem;font-weight:800;color:var(--primary);margin-bottom:16px}
.ra-items-grid{margin-bottom:4px}
.ra-total-row{max-width:300px}
.ra-payment-note{background:var(--light);padding:13px 16px;border-radius:8px;font-size:.94rem;margin-top:10px}
.ra-terms{display:grid;gap:15px}.ra-term{font-size:.95rem;color:var(--gray);line-height:1.65}.ra-term strong{color:var(--dark);display:block;margin-bottom:3px}.ra-replacement-list{margin:6px 0 0 20px}.ra-acknowledge-text{font-weight:650;margin-bottom:15px}
.site-footer{background:var(--dark);color:white;padding:44px 0 22px}
.footer-content{display:grid;gap:22px;text-align:center}
.footer-brand{display:flex;flex-direction:column;align-items:center;gap:8px}
.footer-logo-img{height:150px;width:auto;max-width:100%;object-fit:contain;border-radius:12px;display:block}
.footer-links{display:flex;gap:20px;justify-content:center;flex-wrap:wrap}
.footer-links a{opacity:.9;transition:var(--transition)}
.footer-copy{font-size:.84rem;opacity:.62;padding-top:16px;border-top:1px solid rgba(255,255,255,.12)}
@media(max-width:920px){.nav-toggle{display:flex}.main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;flex-direction:column;align-items:stretch;padding:14px 24px;gap:0;box-shadow:0 8px 18px rgba(0,0,0,.1)}.main-nav.open{display:flex}.main-nav a{padding:12px 0;border-bottom:1px solid #eee}}
@media(max-width:800px){.contact-grid{grid-template-columns:1fr;gap:28px}}
@media(max-width:560px){.section{padding:56px 0}.logo{font-size:.94rem;gap:8px}.logo-img{height:42px}.form-row,.ra-field-row,.ra-items-grid{grid-template-columns:1fr;gap:0}.form-panel,.rental-agreement-form{padding:20px}.footer-links{gap:12px 18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}.photo-item:hover img{transform:none}}
.rental-agreement-form select { width: 100%; padding: 0.75rem; font: inherit; border: 1px solid #ccc; border-radius: 6px; background: #fff; }
