/* Local garden study: limestone, olive leaves and Campo's existing brass. */
:root{--olive:#596345;--olive-light:#bac69b;--olive-line:#87916f;--limestone:#eeece2}
#about{background:var(--limestone);color:#292e25;padding:104px 0 96px;border-top:1px solid #d6d6c4;border-bottom:1px solid #d6d6c4}
#about .about-grid{grid-template-columns:1.05fr 1fr;gap:clamp(40px,6vw,80px);align-items:center}
#about .section-title{color:#30382a;font-size:clamp(33px,3.7vw,47px);max-width:14ch;letter-spacing:-.025em;line-height:1.15;margin-bottom:24px}
#about .eyebrow{color:#586243;letter-spacing:.22em}
#about .section-intro{color:#555b4c;font-size:16px;line-height:1.85;max-width:52ch}
#about .stat-row{gap:clamp(22px,3.5vw,40px);border-top:1px solid #b8beaa;padding-top:24px;margin-top:28px}
#about .stat b{color:#52603e;font-size:30px}
#about .stat>span{color:#5a614e;font-size:10px;letter-spacing:.1em}

#about .about-media{margin:0;overflow:visible;border-radius:0;box-shadow:none;position:relative}
/* The original steak portrait stays in the limestone introduction. */
#about .about-media img{display:block;border-radius:2px;box-shadow:14px 14px 0 #e2e4d6}
/* The garden emerges from charcoal and returns to the warm review background. */
#gallery{padding-bottom:28px}
.campo-gallery-signature{color:#c5a35b;width:132px;margin:17px auto 0;opacity:.86;transform:none}
.campo-garden{position:relative;isolation:isolate;overflow:hidden;color:#f7f3e7;padding:184px 0 184px;background:linear-gradient(180deg,#0e0d0b 0%,#1e241a 9%,#3d4932 20%,#596345 35%,#596345 65%,#414a33 79%,#25291d 91%,#16130f 100%);border:0}
.campo-garden-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(48px,6vw,86px);align-items:center}
.campo-garden-tree{position:absolute;z-index:0;width:min(740px,59vw);height:auto;right:-170px;top:46%;transform:translateY(-43%);opacity:.33;pointer-events:none;mask-image:linear-gradient(90deg,transparent 0%,#000 47%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 47%)}
.campo-garden-media{margin:0;min-width:0}
.campo-garden-frame{position:relative;aspect-ratio:8/5;overflow:hidden;border-radius:2px;background:#697456;box-shadow:12px 12px 0 #d4ddbc14}
.campo-garden-frame img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top;filter:none}
.campo-garden-caption{display:flex;gap:16px;justify-content:space-between;align-items:baseline;line-height:1.6;color:#e0e5cf;margin:26px 0 0;padding:0 0 14px;border-bottom:1px solid #c4cfac66}
.campo-garden-caption span:first-child{font-family:var(--serif);font-size:16px;font-style:italic}
.campo-garden-caption span:last-child{font-size:10px;letter-spacing:.13em;white-space:nowrap}
.campo-garden-copy{position:relative;min-width:0;padding:30px 0 45px}
.campo-garden .eyebrow{color:#e0e5cf;letter-spacing:.22em;margin-bottom:20px}
.campo-garden .section-title{color:#f7f3e7;font-size:clamp(34px,3.4vw,47px);line-height:1.17;letter-spacing:-.025em;max-width:14ch;margin-bottom:26px;text-wrap:balance}
.campo-garden .section-intro{color:#eef0e4;font-size:16px;line-height:1.85;max-width:34ch}
.campo-garden-link{display:inline-flex;align-items:center;gap:24px;min-height:48px;padding:12px 0 9px;margin-top:26px;border-bottom:1px solid #d7dfc1;color:#f7f3e7;font-size:13px;font-weight:600;transition:color .2s,border-color .2s}
.campo-garden-link svg{transition:transform .25s}
.campo-garden-link:hover{color:#fff;border-color:#fff}
.campo-garden-link:hover svg{transform:translateX(4px)}
.campo-garden-link:focus-visible{outline:2px solid #f7f3e7;outline-offset:6px}
#testimonials{background:#16130f;padding-top:40px}
/* Address and directions are real page content, independent of third-party frames. */
#location .map-wrap{border-color:#a5ae8a55;background:#eeeadd;border-radius:4px}

.campo-map-address{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#eeeadd;color:#353c2b;padding:22px 28px}
.campo-map-address>div{display:flex;flex-direction:column;gap:5px}
.campo-map-address span{font:500 10px/1.5 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#596345}
.campo-map-address strong{font:500 18px/1.5 var(--serif)}
.campo-map-address a{display:flex;align-items:center;gap:16px;min-height:46px;border-bottom:1px solid #87916f;color:#354326;font:500 12px/1.5 var(--sans)}
.campo-map-address a:hover{color:#18210f;border-color:#354326}
.campo-map-address a:focus-visible{outline:2px solid #596345;outline-offset:5px}
@media(max-width:900px){
 .campo-garden{padding:148px 0 142px}
 .campo-garden-grid{grid-template-columns:1fr;gap:36px;max-width:698px}
 .campo-garden-copy{order:-1;padding:0 0 24px}
 .campo-garden .section-title{max-width:19ch;font-size:40px}
 .campo-garden .section-intro{max-width:43ch}
 .campo-garden-tree{width:650px;right:-270px;top:170px;transform:none;opacity:.28;mask-image:linear-gradient(90deg,transparent 5%,#000 55%);-webkit-mask-image:linear-gradient(90deg,transparent 5%,#000 55%)}
}
@media(max-width:600px){
 #gallery{padding-bottom:14px}
 .campo-gallery-signature{width:116px;margin-top:12px}
 .campo-garden{padding:126px 0 116px;background:linear-gradient(180deg,#0e0d0b 0%,#273020 9%,#4b583c 20%,#596345 34%,#596345 69%,#39412d 84%,#16130f 100%)}
 .campo-garden-grid{gap:28px}
 .campo-garden-copy{padding-bottom:8px}
 .campo-garden .section-title{font-size:35px;max-width:16ch}
 .campo-garden .section-intro{font-size:15px;max-width:31ch}
 .campo-garden-link{margin-top:22px;gap:18px}
 .campo-garden-tree{width:490px;right:-190px;top:76px;opacity:.28;mask-image:linear-gradient(90deg,transparent 10%,#000 56%);-webkit-mask-image:linear-gradient(90deg,transparent 10%,#000 56%)}
 .campo-garden-frame{box-shadow:8px 8px 0 #d4ddbc14}
 .campo-garden-caption{margin-top:22px;gap:10px}
 .campo-garden-caption span:first-child{font-size:15px}
 .campo-garden-caption span:last-child{font-size:9px}
 #testimonials{padding-top:28px}
 
 .campo-map-address{padding:20px;align-items:flex-start;flex-direction:column;gap:14px}
 .campo-map-address strong{font-size:18px}
 .campo-map-address a{font-size:12px;gap:14px}
}
@media(prefers-reduced-motion:reduce){.campo-garden-link,.campo-garden-link svg{transition:none}}
#menu .menu-group[aria-pressed=true]{background:#62704826;border-color:#819261;color:#d0d9b8}
#menu .menu-group:hover{border-color:#9aaa7c;color:#d0d9b8}
#menu .menu-tab.active{color:#c2cfa5}
#menu .menu-tab::after{background:#94a46f}
#menu .menu-category-kicker{color:#b5c393}
#menu .menu-search input:focus{border-color:#94a46f}
#menu .menu-search svg{stroke:#b5c393}
#menu .campo-item-controls{border-color:#81926180;background:#6270480a}
#menu .campo-item-controls button{color:#c2cfa5}
#menu .campo-item-controls:hover,#menu .campo-item-controls.has-selection{border-color:#94a46f;background:#62704826}
#menu .campo-item-controls button:hover{background:#54633c;color:#f6f2e7}
.campo-selection-bar:not([hidden]){background:#ced5b8;border-color:#e0e7cd;color:#283321}
.campo-selection-bar .campo-bar-count{border-color:#65764d}
#contact .eyebrow,#location .eyebrow{color:#b5c393}
#contact .amenities:first-of-type span:nth-child(-n+2){border-color:#76826280;color:#c8d1b6;background:#59634526}
#contact .contact-actions .btn--gold{background:#b7c395;color:#26321d}
#contact .contact-actions .btn--gold:hover{background:#cbd5b1;box-shadow:0 8px 24px #667a3933}
@media(max-width:900px){#about{padding:72px 0 68px}#about .about-grid{grid-template-columns:1fr;gap:35px}#about .section-title{max-width:19ch}#about .section-intro{max-width:62ch}#about .about-media{max-width:650px}}
@media(max-width:600px){#about{padding:62px 0 60px}#about .section-title{font-size:34px;max-width:14ch}#about .section-intro{font-size:15px;line-height:1.85}#about .stat-row{gap:20px;justify-content:space-between}#about .stat b{font-size:27px}#about .stat>span{font-size:9px;letter-spacing:.06em}#about .about-grid{gap:30px}}
/* A directly rendered map avoids third-party frame restrictions on mobile. */
.campo-map-stage{position:relative;background:#e8eadf}
#campo-map{height:420px;width:100%;z-index:0;font-family:var(--sans);background:#e8eadf}
#campo-map:focus-visible{outline:2px solid #596345;outline-offset:-3px}
.campo-map-status{position:absolute;left:20px;right:20px;top:20px;width:fit-content;margin:0;padding:11px 16px;background:#faf7ef;color:#465337;border:1px solid #bbc3a6;font:400 12px/1.6 var(--sans);z-index:1;pointer-events:none}
.campo-map-status[hidden]{display:none}
.campo-map-pin{background:none;border:0}
.campo-map-pin>span{display:grid;place-items:center;width:44px;height:44px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:#4f6040;border:3px solid #fbf8ef;box-shadow:0 3px 12px #26351e44;color:transparent}
.campo-map-pin>span::after{content:'C.';position:absolute;color:#fff7df;font:700 22px Georgia,serif;transform:rotate(45deg)}
#campo-map .campo-map-label{background:#f8f4e7;border:1px solid #94a07e;box-shadow:0 2px 10px #38442b22;color:#3f5031;font:700 10px/1.2 var(--sans);letter-spacing:.15em;padding:6px 8px}
#campo-map .campo-map-label::before{border-bottom-color:#94a07e}
#campo-map .leaflet-control-zoom{border:1px solid #aab396;box-shadow:0 3px 10px #3b452522}
#campo-map .leaflet-control-zoom a{width:40px;height:40px;line-height:40px;background:#fbf8f0;color:#465337;border-color:#c0c6ae}
#campo-map .leaflet-control-zoom a:hover{background:#e5ebd7}
#campo-map .leaflet-control-attribution{background:#faf8efed;color:#515c43;font-size:10px;padding:3px 7px}
#campo-map .leaflet-control-attribution a{color:#3b5730}
#campo-map .leaflet-popup-content-wrapper,#campo-map .leaflet-popup-tip{background:#f7f1e3;color:#3a422e;border-radius:3px}
#campo-map .leaflet-popup-content{font:400 12px/1.5 var(--sans)}
#campo-map .campo-map-popup strong{display:block;font:600 18px/1.3 var(--serif);margin-bottom:8px}
#campo-map .campo-map-popup span{display:block;color:#5c644d}
#campo-map .campo-map-popup a{display:inline-flex;align-items:center;min-height:44px;color:#42572e;text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){#campo-map{height:340px}}

/* One botanical engraving behind the limestone introduction. */
#about{position:relative;isolation:isolate;overflow:hidden}
#about .about-grid{position:relative;z-index:1}
.campo-about-branch{position:absolute;z-index:0;pointer-events:none;user-select:none;width:560px;height:auto;left:calc(50% - 425px);top:-48px;opacity:.23;transform:rotate(-9deg);mask-image:linear-gradient(180deg,#000 0%,#000 59%,transparent 96%);-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 59%,transparent 96%)}
@media(max-width:900px){.campo-about-branch{width:530px;left:auto;right:-40px;top:-48px;opacity:.21;transform:rotate(-12deg);mask-image:linear-gradient(180deg,#000 0%,#000 50%,transparent 87%);-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 50%,transparent 87%)}}
@media(max-width:600px){.campo-about-branch{width:370px;right:-91px;top:-12px;opacity:.22;transform:rotate(-8deg)}}
