/* Technical corrections with the previously approved visual palette. */
:root{--pine:#102b29;--deep:#091e1e;--pine-deep:#091e1e;--pine-light:#244b43;--pine-soft:#1f4843;--cream:#f2ecdd;--paper:#fffaf0;--paper-deep:#e7decc;--orange:#e56d47;--gold:#edc875;--teal:#90b9b5;--ink:#172c29;--muted:#6b746a;--line:rgba(16,43,41,.16);--action:var(--orange)}
.button-primary{color:#fff8eb;font-weight:700}
.card-actions button{min-height:32px;font-size:11px;line-height:1.5;color:var(--action)}
.card-actions button:last-child{color:var(--pine)}
.species-info>p{font-size:11px;line-height:1.6}
.species-info h3{line-height:1.25}
.catalog-section .section-kicker,.collection-intro .section-kicker,.detail-content .section-kicker,.detail-scientific,.landscape-text>small{color:var(--action)}
.contact-section .section-kicker{color:#ffe5a5}
.detail-credit-note,.map-disclaimer,.map-attribution{font-size:11px;line-height:1.6}
.filter-button{min-height:36px;font-size:11px}
.instagram-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin-top:8px;color:var(--gold);font-size:13px}
.instagram-link svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7}
.detail-photo-slot[hidden],#speciesPhotoCredit[hidden],#cartRequest[hidden],#cartOrderNote[hidden]{display:none!important}
.detail-reference-stage{position:relative;overflow:hidden;display:flex;flex-direction:column}
.detail-reference-stage[hidden]{display:none!important}
.detail-reference-stage>img{flex:1 1 0;min-height:0;width:100%;height:0;object-fit:contain;background:#dce9e8}
.species-photo-credit{position:relative;flex:0 0 auto;z-index:2;margin:0;padding:12px;background:#091e1de8;color:var(--paper);font:11px/1.55 var(--body);overflow-wrap:anywhere}
.species-photo-credit a{text-decoration:underline;text-underline-offset:3px}
.detail-reference-stage .reference-chip{max-width:calc(100% - 24px);font-size:10px}
.application-image{display:flex;justify-content:center;align-items:center;height:480px;min-height:0;padding:24px 14px 34px;background:linear-gradient(135deg,#dce9e8,#f4eedf)}
.thermo-stage{position:relative;height:100%;max-width:90%;aspect-ratio:var(--thermo-ratio);transition:transform .25s}
.application-image .thermo-photo{width:100%;height:100%;max-height:none;object-fit:contain;filter:drop-shadow(0 10px 8px #102b2920)}
.thermo-sticker{position:absolute;transform:translate(-50%,-50%);display:grid;place-items:center;filter:drop-shadow(0 1px 1px #0005)}
.application-image .thermo-sticker>img{width:100%;height:100%;max-height:none;object-fit:contain;filter:brightness(.93) contrast(1.03)}
.thermo-sticker:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#0003,transparent 25%,#fff1 45%,transparent 65%,#0002);mask-image:var(--sticker-mask);mask-size:contain;mask-position:center;mask-repeat:no-repeat}
.application-image>span{color:var(--pine);text-shadow:none;font:10px/1.5 var(--mono);right:14px;left:14px;text-align:center}
.application-copy>small{display:block;margin-top:12px;color:var(--muted);font:12px/1.65 var(--body)}
.cart-request{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;padding:12px;margin-top:18px;border-radius:5px;background:var(--gold);color:var(--pine);font:700 14px var(--body)}
.cart-order-note{margin:10px 0 0;color:var(--muted);font-size:12px;line-height:1.6}
.cart-continue{margin-top:12px}
.contact-page .site-header{gap:18px}.contact-page .brand img{width:44px;height:64px;object-fit:contain}
.contact-page .header-link{display:flex;align-items:center;gap:12px;min-height:44px;font-size:12px}
.contact-page .contact-intro h1 em{font:italic 400 1em Georgia,serif;color:var(--action)}
.contact-page .eyebrow,.contact-page .collection-kicker{font:12px/1.6 var(--mono);color:var(--action)}
.contact-page .form-field,.contact-page .form-label{font-size:13px;line-height:1.5}
.contact-page .form-field input:not([type=file]),.contact-page .form-field textarea{font-size:16px}
.contact-page .upload-box:focus-within{outline:3px solid var(--pine);outline-offset:3px}
.order-summary{margin:0 0 24px;padding:18px;background:#e5ebe2;border:1px solid var(--line);border-radius:6px}
.order-summary h3{margin:0 0 12px;font:600 22px var(--display)}
.order-summary #orderItems p{display:flex;justify-content:space-between;gap:14px;padding:9px 0;margin:0;border-bottom:1px solid var(--line);font-size:13px}
.order-summary b{white-space:nowrap}.order-summary>strong{display:block;margin-top:14px;font-size:17px}
.order-summary>p,.attachment-email-note,.contact-draft>p{font:12px/1.65 var(--body);color:var(--muted)}
#orderSummary[hidden],#contactDraft[hidden],#attachmentEmailNote[hidden]{display:none!important}
.contact-draft{padding:18px;border:1px solid var(--line);border-radius:6px;background:var(--cream);margin-top:16px}
.contact-draft label{display:block;margin:18px 0 8px;font-size:13px;font-weight:600}
.contact-draft textarea{width:100%;min-height:170px;resize:vertical;padding:12px;border:1px solid var(--line);font:14px/1.6 var(--body);color:var(--pine);background:var(--paper)}
.contact-draft>button{min-height:44px;padding:10px 15px;border:1px solid var(--pine);color:var(--pine);background:transparent;margin-top:10px;cursor:pointer}
.contact-footer .footer-brand{min-width:0}.contact-footer .instagram-link{align-self:start}

/* Restore the blue-grey background, panoramic header and photo overlays from styles.css. */
body{background:radial-gradient(ellipse at 88% 12%,rgba(110,157,164,.19),transparent 31%),radial-gradient(ellipse at 8% 52%,rgba(134,174,168,.15),transparent 34%),linear-gradient(135deg,#dce9e9 0%,#e7ece3 43%,#f2ecdd 100%);background-attachment:fixed;color:var(--ink)}
.site-header{background:linear-gradient(rgba(255,248,235,.55),rgba(255,248,235,.55)),url('assets/header-panorama.jpg') center 50%/cover no-repeat}
.hero:before{background-position:center 50%;transform:none}
.hero-shade{background:linear-gradient(90deg,rgba(9,30,30,.84) 0%,rgba(9,30,30,.68) 48%,rgba(9,30,30,.46) 100%),radial-gradient(ellipse at 77% 44%,rgba(60,107,96,.42),transparent 35%),radial-gradient(ellipse at 17% 95%,rgba(229,109,71,.11),transparent 26%)}
.hero-lede{color:#c1d0c5}
.marquee{background:#090d0c;color:#fff4df}
.collection-intro,.catalog-section,.landscape-section{background:transparent}
.species-card,.species-card:hover{background:transparent;border:0;box-shadow:none}
.product-art{background:transparent}.product-art:before{display:none}
.vinyl-section{background:transparent;color:var(--ink);border-block:1px solid rgba(16,43,41,.09)}
.vinyl-heading h2{color:var(--pine)}.vinyl-heading .section-kicker{color:var(--orange)}.vinyl-heading>p{color:var(--muted)}
.vinyl-card,.vinyl-art{background:transparent}
.contact-section{background:linear-gradient(125deg,#173f41 0%,#25575a 54%,#3f7275 100%);color:var(--paper)}
.contact-section h2 em{color:#ffe09c}.contact-section>div>p:last-child{color:#dce8e4}
.contact-star{color:#fff4df12}
.detail-dialog::backdrop,.application-dialog::backdrop{background:rgba(7,30,29,.78);backdrop-filter:blur(8px)}
.application-image{background:radial-gradient(ellipse at 48% 42%,#fbf8ee 0%,#d9e7e6 76%)}
.species-photo-credit{background:rgba(9,30,30,.72);backdrop-filter:blur(8px)}
.contact-form{background:rgba(255,250,240,.72);backdrop-filter:blur(12px)}

/* Restore the original headline hierarchy and keep catalog labels restrained. */
.hero h1{margin:24px 0 22px;font:500 clamp(62px,8vw,112px)/.84 var(--display);letter-spacing:-.09em;color:var(--cream)}
.hero h1>span,.hero h1>strong,.hero h1>em{display:block}
.hero h1>strong{font-weight:600;color:var(--paper)}
.hero h1>em{font:italic 500 1em/.92 Georgia,serif;letter-spacing:-.08em;color:var(--gold);padding:4px 0 0 7px}
.product-label{max-width:calc(100% - 24px);padding:5px 7px;font:500 8px/1.4 var(--mono);letter-spacing:.05em}
.vinyl-trigger .vinyl-label{font:500 8px/1.5 var(--mono);letter-spacing:.05em}
.product-number{display:none}
.product-price,.landscape-card .product-price,.vinyl-card .product-purchase .product-price{display:inline-flex;flex:0 0 auto;align-items:baseline;gap:5px;white-space:nowrap;font:600 20px/1.2 var(--display);letter-spacing:-.035em}
.product-price small,.vinyl-card .product-price small{display:inline-block;flex:0 0 auto;margin:0;white-space:nowrap;font:500 9px/1.2 var(--mono);letter-spacing:.025em;color:var(--muted)}
.vinyl-photo-panel[hidden]{display:none!important}
.vinyl-photo-panel{margin-top:22px;padding:16px;border:1px solid var(--line);background:rgba(255,250,240,.42)}
.vinyl-photo-panel>.section-kicker{font-size:9px;line-height:1.5}
.vinyl-photo-panel h3{margin:8px 0 14px;font:600 23px/1.15 var(--display);letter-spacing:-.035em;color:var(--pine)}
.vinyl-photo-panel figure{margin:0}
.vinyl-reference-image{display:block;width:100%;height:auto;max-height:310px;object-fit:contain;background:transparent}
.vinyl-photo-panel figcaption{margin-top:12px;font:11px/1.6 var(--body);color:var(--muted);overflow-wrap:anywhere}
.vinyl-photo-panel figcaption a{text-decoration:underline;text-underline-offset:3px}
.photo-locality{display:block;margin-bottom:3px;font-weight:600}
.photo-adaptation{display:block;font-size:10px;opacity:.85}
.detail-dialog--vinyl .detail-media{grid-template-rows:1fr;background:transparent}
.detail-dialog--vinyl .detail-art-stage{min-height:350px}
@media(hover:hover){.thermo-stage:hover{transform:scale(1.04)}}
@media(max-width:760px){
 .hero h1{font-size:clamp(55px,16vw,76px);line-height:.88;letter-spacing:-.075em}
 .product-label{max-width:calc(100% - 14px);padding:4px 5px;font-size:7px;letter-spacing:.025em}
 .detail-dialog--vinyl .detail-art-stage{min-height:290px}
 .card-actions button{min-height:44px;font-size:10px}.filter-button{min-height:44px}
 .species-info>p{font-size:10px}.application-image{height:58vh;height:58dvh;min-height:310px;padding:25px 14px 35px}
 .detail-media--fauna .detail-reference-stage{height:340px;min-height:340px}
 .species-photo-credit{font-size:12px;padding:12px}.detail-reference-stage .reference-chip{font-size:9px}
 .contact-page .site-header{height:auto;min-height:84px;padding:12px 18px;flex-wrap:wrap}
 .contact-page .brand{min-width:0}.contact-page .brand strong{font-size:18px}
 .contact-page .site-footer{grid-template-columns:1fr}.contact-page .footer-bottom{gap:10px;flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto!important}*,*:before,*:after{animation:none!important;transition:none!important}
 .species-card:hover,.species-card:hover img,.hero-sticker:hover,.landscape-card:hover img,.thermo-stage:hover{transform:none!important}
}
