/*
Theme Name: Skrín af Grønne dale - version 18
Theme URI: https://skrin.dk/
Author: Grønne dale
Description: Et specialbygget WordPress-tema til Skrín.
Version: 1.8.0
Text Domain: skrin-v18
*/
@font-face{font-family:"Cormorant Garamond";src:url('assets/cormorant-garamond.woff2') format('woff2');font-weight:400 500;font-style:normal;font-display:swap}
@font-face{font-family:"Manrope";src:url('assets/manrope.woff2') format('woff2');font-weight:400 600;font-style:normal;font-display:swap}
:root{--font-sans:"Manrope"}
.admin-bar .site-header{top:32px}.skrin-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:782px){.admin-bar .site-header{top:46px}}
:root { --paper:#f2eadf; --ink:#302821; --moss:#54563c; --moss-deep:#353622; --sage:#aaa483; --sage-light:#ddd4c1; --walnut:#4a3428; --walnut-deep:#2b1f19; --line:rgba(65,49,39,.24); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:var(--font-sans),sans-serif; }
a { color:inherit; text-decoration:none; }
.opening-sequence { position:fixed; inset:0; z-index:100; background:var(--walnut-deep); display:grid; place-items:center; overflow:hidden; pointer-events:none; animation:openingFade 2.3s cubic-bezier(.72,0,.2,1) forwards; }
.opening-scene { position:absolute; inset:0; background:linear-gradient(90deg,rgba(43,31,25,.72),rgba(43,31,25,.12)),url('assets/skrin-manual-open.png') center/cover no-repeat; transform:scale(1.05); clip-path:inset(0 0 52% 0); animation:sceneOpen 1.75s .12s cubic-bezier(.7,0,.2,1) forwards; }
.opening-mark { position:relative; z-index:3; color:#f5f0e7; font-family:"Cormorant Garamond",Georgia,serif; font-size:clamp(3.5rem,7vw,7rem); letter-spacing:.04em; animation:markFade 1.7s ease forwards; }
.motion-ready [data-reveal] { opacity:0; transform:translateY(24px); transition:opacity .85s cubic-bezier(.2,.65,.25,1),transform .85s cubic-bezier(.2,.65,.25,1); }
.motion-ready [data-reveal].is-visible { opacity:1; transform:none; }
@keyframes openingFade { 0%,72%{opacity:1} 100%{opacity:0;visibility:hidden} }
@keyframes markFade { 0%,20%{opacity:0;transform:translateY(8px)} 45%,72%{opacity:1;transform:none} 100%{opacity:0} }
@keyframes sceneOpen { 0%{clip-path:inset(0 0 52% 0);transform:scale(1.05)} 100%{clip-path:inset(0);transform:scale(1)} }
.site-header { height:92px; padding:0 4vw; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; border-bottom:1px solid var(--line); position:absolute; z-index:5; width:100%; color:#f7f2e8; }
.wordmark { display:inline-flex; flex-direction:column; align-items:flex-start; line-height:.82; }
.wordmark strong { font-family:"Cormorant Garamond",Georgia,serif; font-size:2.05rem; font-weight:400; letter-spacing:.04em; }
.wordmark small { margin-top:8px; font:500 .48rem/1 var(--font-sans),sans-serif; text-transform:uppercase; letter-spacing:.17em; opacity:.74; }
.site-header nav { display:flex; gap:24px; font-size:.64rem; text-transform:uppercase; letter-spacing:.12em; }
.header-actions { justify-self:end; display:flex; align-items:center; gap:22px; }
.language-switch { font-size:.62rem; letter-spacing:.14em; opacity:.72; padding:8px 0; border-bottom:1px solid rgba(255,255,255,.45); }
.header-cta { justify-self:end; position:relative; padding:12px 0 9px; font-size:.68rem; text-transform:uppercase; letter-spacing:.1em; overflow:hidden; }
.header-cta span { display:inline-block; margin-left:8px; animation:ctaNudge 2.4s ease-in-out infinite; }
.header-cta:after { content:""; position:absolute; left:0; bottom:2px; width:100%; height:1px; background:linear-gradient(90deg,transparent,#fff,transparent); transform:translateX(-100%); animation:ctaShine 3.6s ease-in-out infinite; }
.header-cta:hover { color:#fff; }
@keyframes ctaNudge { 0%,70%,100%{transform:none} 82%{transform:translate(3px,3px)} }
@keyframes ctaShine { 0%,45%{transform:translateX(-100%)} 72%,100%{transform:translateX(100%)} }
.hero { min-height:760px; height:100vh; position:relative; color:#faf7f0; display:flex; align-items:center; overflow:hidden; }
.hero:after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(43,31,25,.84) 0%,rgba(43,31,25,.46) 48%,rgba(43,31,25,.08) 75%); }
.hero-image { position:absolute; inset:0; background:#d7cfc2 url('assets/skrin-manual-open.png') 64% center/cover no-repeat; }
.hero-copy { width:min(760px,80vw); padding-left:8vw; position:relative; z-index:2; margin-top:70px; }
.eyebrow,.section-label { font-size:.68rem; text-transform:uppercase; letter-spacing:.22em; font-weight:600; }
.hero h1,.intro h2,.story-copy h2,.process h2,.object h2,.contact h2 { font-family:"Cormorant Garamond",Georgia,serif; font-weight:400; letter-spacing:-.035em; margin:20px 0; line-height:.92; }
.hero h1 { font-size:clamp(4rem,7vw,7.2rem); }
.lead { max-width:590px; line-height:1.8; font-size:.98rem; color:rgba(255,255,255,.8); }
.text-link { display:inline-flex; gap:25px; margin-top:28px; padding-bottom:8px; border-bottom:1px solid; text-transform:uppercase; letter-spacing:.16em; font-size:.68rem; }
.image-note { position:absolute; right:4vw; bottom:4vh; z-index:2; writing-mode:vertical-rl; text-transform:uppercase; letter-spacing:.18em; font-size:.6rem; }
.product-summary { padding:90px 8vw 96px; display:grid; grid-template-columns:.58fr 2fr; gap:6vw; background:var(--moss); color:#f7f1e7; }
.product-summary h2 { margin:16px 0 0; font-family:"Cormorant Garamond",Georgia,serif; font-size:clamp(2.6rem,4vw,4.8rem); font-weight:400; line-height:.96; letter-spacing:-.035em; }
.product-summary>div .eyebrow { color:var(--sage-light); }
.product-summary ol { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(4,1fr); gap:10px; }
.product-summary li { position:relative; isolation:isolate; overflow:hidden; min-height:340px; padding:28px 25px 25px; display:flex; flex-direction:column; justify-content:flex-end; background-position:center; background-size:cover; transition:transform .55s cubic-bezier(.2,.65,.25,1),filter .55s; }
.product-summary li:nth-child(1) { background-image:url('assets/deliverable-film.png'); }
.product-summary li:nth-child(2) { background-image:url('assets/deliverable-portraits.png'); background-position:center 35%; }
.product-summary li:nth-child(3) { background-image:url('assets/deliverable-memories.png'); }
.product-summary li:nth-child(4) { background-image:url('assets/skrin-manual-open.png'); }
.product-summary li:before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg,rgba(43,31,25,.08) 12%,rgba(43,31,25,.9) 100%); }
.product-summary li:after { content:""; position:absolute; inset:0; border:1px solid rgba(255,255,255,.16); pointer-events:none; }
.product-summary li:hover { transform:translateY(-5px); filter:saturate(1.04); }
.product-summary li span { display:block; margin-bottom:auto; font-size:.58rem; letter-spacing:.18em; color:#e1d8bd; }
.product-summary li strong { display:block; min-height:58px; font-family:"Cormorant Garamond",Georgia,serif; font-size:1.65rem; line-height:1.05; font-weight:500; }
.product-summary li p { margin:15px 0 0; font-size:.7rem; line-height:1.7; color:rgba(255,255,255,.76); }
.intro { padding:140px 8vw; display:grid; grid-template-columns:.42fr 1.08fr 1fr; column-gap:5vw; row-gap:55px; align-items:start; }
.intro>.section-label { grid-column:1; grid-row:1; }
.intro>div { grid-column:3; grid-row:1 / span 2; }
.section-label span { opacity:.45; margin-left:14px; text-transform:none; letter-spacing:0; font-style:italic; }
.intro h2,.story-copy h2,.process h2,.object h2 { font-size:clamp(3.5rem,5.5vw,6.4rem); }
.intro>div>p { font-family:"Cormorant Garamond",Georgia,serif; font-size:clamp(1.35rem,2vw,2.05rem); line-height:1.45; max-width:640px; }
.intro>div>p+p { font-family:var(--font-sans),sans-serif; font-size:.9rem; max-width:520px; line-height:1.8; margin-top:30px; }
.name-story { max-width:640px; margin-top:60px; padding:28px 0 0; border-top:1px solid var(--line); display:grid; grid-template-columns:145px 1fr; gap:28px; }
.name-story>span { font-size:.65rem; text-transform:uppercase; letter-spacing:.16em; color:var(--moss); }
.name-story p { margin:0; font-size:.78rem; line-height:1.8; opacity:.72; }
.name-story em { font-family:"Cormorant Garamond",Georgia,serif; font-size:1.08rem; }
.intro-object { grid-column:1 / span 2; grid-row:2; min-height:650px; margin:0; position:relative; overflow:visible; }
.intro-main-image { width:88%; height:640px; background:#746454 url('assets/skrin-family-review.png') center/cover no-repeat; transition:transform .7s,filter .7s; filter:saturate(.78); }
.intro-detail-image { position:absolute; right:0; bottom:44px; width:35%; height:265px; border:10px solid var(--paper); background:#514238 url('assets/skrin-manual-open.png') center/cover no-repeat; box-shadow:0 24px 50px rgba(43,31,25,.18); transition:transform .7s; }
.intro-object:hover .intro-main-image { transform:scale(.995); filter:saturate(.94); }
.intro-object:hover .intro-detail-image { transform:translateY(-5px); }
.intro-object figcaption { width:88%; margin-top:14px; color:var(--moss); font:500 .59rem/1.5 var(--font-sans),sans-serif; text-transform:uppercase; letter-spacing:.12em; }
.quote-band { background:var(--moss); color:#f7f1e7; padding:120px 5vw; text-align:center; }
.quote-band p { font-family:"Cormorant Garamond",Georgia,serif; font-size:clamp(3rem,6vw,6.8rem); line-height:1; margin:0; font-style:italic; }
.story-grid { display:grid; grid-template-columns:1fr 1fr; min-height:760px; }
.story-image { background:#765f48 url('assets/skrin-story.png') center/cover no-repeat; min-height:620px; }
.story-copy { padding:10vw 8vw; display:flex; flex-direction:column; justify-content:center; }
.story-copy>p:not(.eyebrow),.object-copy>p { font-family:"Cormorant Garamond",Georgia,serif; font-size:1.45rem; line-height:1.5; }
.story-copy>p+p { font-family:var(--font-sans),sans-serif; font-size:.85rem; line-height:1.8; }
.founder { padding:140px 8vw; display:grid; grid-template-columns:.45fr 1.4fr .72fr; gap:5vw; background:var(--paper); align-items:start; }
.founder-label span { display:block; margin-top:18px; font-family:"Cormorant Garamond",Georgia,serif; font-size:1.4rem; color:var(--moss); }
.founder-story h2 { font-family:"Cormorant Garamond",Georgia,serif; font-size:clamp(2.8rem,4.5vw,5.3rem); font-weight:400; line-height:1.03; letter-spacing:-.035em; margin:0; max-width:980px; }
.founder-columns { display:grid; grid-template-columns:1fr 1fr; gap:6vw; margin-top:70px; padding-top:35px; border-top:1px solid var(--line); }
.founder-columns h3 { font-size:.66rem; text-transform:uppercase; letter-spacing:.18em; color:var(--moss); }
.founder-columns p { font-family:"Cormorant Garamond",Georgia,serif; font-size:1.35rem; line-height:1.5; }
.founder-image { grid-column:3; grid-row:1; margin:4px 0 0; position:relative; }
.founder-image>div { height:600px; min-height:0; background:#6c5b48 url('assets/skrin-recording.png') center/cover no-repeat; filter:saturate(.76); transition:filter .7s,transform .7s; }
.founder-at-work>div { background-image:url('assets/toke-portrait.webp'); background-position:center 22%; }
.founder-image:hover>div { filter:saturate(.95); transform:scale(.995); }
.generations { position:relative; overflow:hidden; padding:140px 8vw; background:var(--walnut-deep); color:#f4efe6; display:grid; grid-template-columns:.7fr 2fr; gap:8vw; }
.generations h2 { font-family:"Cormorant Garamond",Georgia,serif; font-size:clamp(3.8rem,6vw,7rem); font-weight:400; line-height:.92; letter-spacing:-.035em; margin:0; }
.generations>div>p { max-width:620px; margin:45px 0 0; font-size:.9rem; line-height:1.85; color:rgba(255,255,255,.7); }
.generations-image { grid-column:1/-1; position:relative; margin:55px 0 0; overflow:hidden; }
.generations-image>div { height:min(50vw,620px); min-height:430px; background:#40352b url('assets/skrin-generations.png') center/cover no-repeat; animation:generationDrift 16s ease-in-out infinite alternate; }
.generations-image:after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(43,31,25,.46),transparent 55%); pointer-events:none; }
.generations-image figcaption { position:absolute; z-index:2; right:25px; bottom:22px; margin:0; font-family:"Cormorant Garamond",Georgia,serif; font-size:1.4rem; color:#fff; }
@keyframes generationDrift { from{transform:scale(1.025) translateX(-.3%)} to{transform:scale(1.075) translateX(.8%)} }
.process { padding:140px 8vw; background:var(--moss); color:#f3efe6; }
.process-head { display:flex; justify-content:space-between; align-items:start; gap:5vw; }
.process-head>div { max-width:420px; }
.process-head h2 { margin-top:0; }
.process-intro { font-family:"Cormorant Garamond",Georgia,serif; font-size:1.3rem; line-height:1.5; margin-top:35px; color:rgba(255,255,255,.78); }
.steps { display:grid; grid-template-columns:repeat(4,1fr); margin-top:70px; border-top:1px solid rgba(255,255,255,.28); }
.steps article { padding:35px 2.2vw 20px 0; border-right:1px solid rgba(255,255,255,.22); min-height:340px; }
.steps article+article { padding-left:2.2vw; }
.steps article:last-child { border:0; padding-right:0; }
.steps span { font-size:.65rem; letter-spacing:.18em; }
.step-top { display:flex; justify-content:space-between; align-items:start; }
.line-icon { display:block; width:42px; height:42px; font-style:normal; }
.line-icon svg { width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.4; stroke-linecap:round; stroke-linejoin:round; }
.steps h3 { font-family:"Cormorant Garamond",Georgia,serif; font-size:2.3rem; font-weight:400; margin:45px 0 15px; }
.steps p { font-size:.75rem; line-height:1.75; opacity:.72; }
.included { padding:140px 8vw; background:var(--sage-light); }
.included-head { display:grid; grid-template-columns:.7fr 1.2fr 1fr; gap:6vw; align-items:start; }
.included h2 { font-family:"Cormorant Garamond",Georgia,serif; font-size:clamp(3.5rem,5.5vw,6.4rem); font-weight:400; letter-spacing:-.035em; line-height:.92; margin:0; }
.included-head>p:last-child { font-family:"Cormorant Garamond",Georgia,serif; font-size:1.35rem; line-height:1.5; margin:5px 0 0; }
.contents-grid { display:grid; grid-template-columns:repeat(2,1fr); margin-top:90px; border-top:1px solid rgba(65,49,39,.32); }
.contents-grid article { display:grid; grid-template-columns:58px 1fr; column-gap:25px; padding:35px 4vw 40px 0; border-bottom:1px solid rgba(65,49,39,.32); }
.contents-grid article:nth-child(odd) { border-right:1px solid rgba(65,49,39,.32); }
.contents-grid article:nth-child(even) { padding-left:4vw; }
.deliverable-image { grid-column:1/-1; height:230px; margin-bottom:28px; background-position:center; background-size:cover; overflow:hidden; filter:saturate(.72) contrast(.96); transition:transform .65s cubic-bezier(.2,.65,.25,1),filter .65s; }
.contents-grid article:hover .deliverable-image { transform:scale(.985); filter:saturate(.92) contrast(1); }
.deliverable-number { font-size:.65rem; letter-spacing:.18em; padding-top:10px; }
.contents-grid h3 { font-family:"Cormorant Garamond",Georgia,serif; font-size:2.15rem; font-weight:400; margin:0 0 15px; }
.contents-grid p { grid-column:2; font-size:.78rem; line-height:1.75; max-width:430px; opacity:.75; margin:0; }
.object { padding:140px 8vw; display:grid; grid-template-columns:.72fr .66fr 1fr; gap:5vw; background:#eee5d8; align-items:start; }
.object-copy { padding-top:50px; }
.object-copy .organised-note { font-family:var(--font-sans),sans-serif; font-size:.84rem; line-height:1.8; color:var(--moss); margin-top:25px; }
.object-copy ul { list-style:none; padding:25px 0 0; margin-top:35px; border-top:1px solid var(--line); }
.object-copy li { padding:16px 0; border-bottom:1px solid var(--line); font-size:.75rem; text-transform:uppercase; letter-spacing:.1em; }
.object-craft { grid-column:2; grid-row:1; margin:4px 0 0; }
.object-craft>div { min-height:0; height:520px; background:#6d5a46 url('assets/skrin-craft.png') center/cover no-repeat; filter:saturate(.78); transition:filter .6s,transform .6s; }
.object-craft:hover>div { filter:saturate(.95); transform:scale(.995); }
.object-craft figcaption,.contact-image figcaption { margin-top:16px; font-size:.62rem; line-height:1.5; text-transform:uppercase; letter-spacing:.13em; color:var(--moss); }
.craft-detail { padding:130px 5vw 6vw; background:var(--walnut-deep); color:#f4efe6; overflow:hidden; }
.detail-copy { display:grid; grid-template-columns:.55fr 1.35fr .8fr; gap:6vw; align-items:start; margin:0 3vw 80px; }
.detail-copy h2 { font-family:"Cormorant Garamond",Georgia,serif; font-size:clamp(3.4rem,5vw,6rem); font-weight:400; line-height:.94; letter-spacing:-.035em; margin:0; }
.detail-copy>p:last-child { font-family:"Cormorant Garamond",Georgia,serif; font-size:1.35rem; line-height:1.55; color:rgba(255,255,255,.72); margin:5px 0 0; }
.detail-gallery { display:grid; grid-template-columns:1fr 1fr; gap:2px; }
.detail-visual { position:relative; min-height:650px; margin:0; overflow:hidden; isolation:isolate; background:#40352b; }
.detail-visual:after { content:""; position:absolute; inset:0; z-index:1; background:linear-gradient(0deg,rgba(43,31,25,.64),transparent 45%); pointer-events:none; }
.detail-image { position:absolute; inset:-4%; background-position:center; background-size:cover; background-repeat:no-repeat; animation:detailDrift 14s cubic-bezier(.45,.05,.55,.95) infinite alternate; will-change:transform; transition:filter .5s; }
.detail-closed .detail-image { background-image:url('assets/skrin-manual-closed.png'); animation-direction:alternate-reverse; }
.detail-open .detail-image { background-image:url('assets/skrin-manual-open.png'); }
.detail-visual:hover .detail-image { animation-play-state:paused; filter:brightness(1.04); }
.detail-visual figcaption { position:absolute; z-index:3; left:32px; bottom:28px; display:flex; gap:14px; align-items:center; font-family:"Cormorant Garamond",Georgia,serif; font-size:1.65rem; }
.detail-visual figcaption span { font:500 .6rem/1 var(--font-sans),sans-serif; letter-spacing:.15em; color:var(--sage); }
.detail-point { position:absolute; z-index:3; display:flex; align-items:center; gap:10px; color:#fff; font-size:.58rem; text-transform:uppercase; letter-spacing:.13em; text-shadow:0 1px 12px rgba(0,0,0,.65); }
.detail-point i { width:12px; height:12px; border:1px solid #fff; border-radius:50%; position:relative; box-shadow:0 0 0 0 rgba(255,255,255,.5); animation:detailPulse 3s ease-out infinite; }
.detail-point i:after { content:""; position:absolute; inset:3px; border-radius:50%; background:#fff; }
.closed-joint { left:10%; top:64%; }
.closed-grain { left:46%; top:31%; }
.closed-close { right:8%; top:57%; }
.open-letter { left:10%; top:44%; }
.open-photos { left:43%; top:48%; }
.open-archive { right:7%; top:56%; }
@keyframes detailDrift { from{transform:scale(1.035) translate3d(-.4%,0,0)} to{transform:scale(1.09) translate3d(1.3%,-.7%,0)} }
@keyframes detailPulse { 0%,55%{box-shadow:0 0 0 0 rgba(255,255,255,.5)} 85%,100%{box-shadow:0 0 0 12px rgba(255,255,255,0)} }
.architecture { padding:140px 5vw 110px; background:#d9cfb9; color:var(--walnut-deep); }
.architecture-head { margin:0 3vw 85px; display:grid; grid-template-columns:.55fr 1.35fr .8fr; gap:6vw; align-items:start; }
.architecture-head h2 { margin:0; font-family:"Cormorant Garamond",Georgia,serif; font-size:clamp(3.5rem,5.4vw,6.3rem); font-weight:400; line-height:.92; letter-spacing:-.035em; }
.architecture-head>p:last-child { margin:8px 0 0; font-size:.82rem; line-height:1.8; opacity:.72; }
.drawing-grid { display:grid; grid-template-columns:1fr 1fr; gap:2px; background:rgba(65,49,39,.22); border:1px solid rgba(65,49,39,.22); }
.drawing-card { min-width:0; background:#eee7da; padding:38px 3vw 34px; margin:0; overflow:hidden; }
.drawing-meta { display:grid; grid-template-columns:42px 1fr; column-gap:16px; align-items:baseline; }
.drawing-meta>span { grid-row:1/3; font-size:.6rem; letter-spacing:.18em; color:#77785b; }
.drawing-meta h3 { margin:0; font-family:"Cormorant Garamond",Georgia,serif; font-size:2rem; font-weight:500; }
.drawing-meta small { margin-top:5px; font-size:.56rem; text-transform:uppercase; letter-spacing:.14em; opacity:.56; }
.drawing-card svg { width:100%; height:auto; display:block; margin:28px 0 20px; overflow:visible; }
.drawing-card svg .shape path,.drawing-card svg .dimensions path,.drawing-card svg .labels path { fill:none; stroke:#54563c; stroke-width:1.4; vector-effect:non-scaling-stroke; }
.drawing-card svg .shape path:not(.accent) { fill:rgba(84,86,60,.045); }
.drawing-card svg .shape .accent { stroke:#b58c4a; stroke-width:2; }
.drawing-card svg text { fill:#54563c; font:500 13px var(--font-sans),sans-serif; letter-spacing:1px; }
.drawing-card svg .dimensions text { font-size:12px; fill:#77785b; }
.drawing-card>p { min-height:58px; max-width:620px; margin:0; font-size:.72rem; line-height:1.75; opacity:.7; }
.section-shape path,.tray-shape rect,.tray-shape circle { fill:rgba(84,86,60,.055); stroke:#54563c; stroke-width:1.4; vector-effect:non-scaling-stroke; }
.section-shape .accent-fill,.tray-shape .accent-fill { fill:rgba(84,86,60,.18); }
.section-shape .book { fill:#b8ad94; }
.drawing-exploded .exploded-visual { height:360px; margin:28px -3vw 20px; background:#d8d1c5 url('assets/skrin-manual-exploded.png') center/cover no-repeat; filter:saturate(.72); }
.drawing-exploded ol { list-style:none; display:grid; grid-template-columns:1fr 1fr; gap:10px 20px; padding:0; margin:0; }
.drawing-exploded li { display:flex; align-items:center; gap:10px; padding-top:9px; border-top:1px solid rgba(65,49,39,.22); font-size:.65rem; text-transform:uppercase; letter-spacing:.09em; }
.drawing-exploded li span { color:#77785b; }
.architecture-note { margin:36px 3vw 0; max-width:760px; font-size:.6rem; line-height:1.7; text-transform:uppercase; letter-spacing:.1em; opacity:.65; }
.pricing { padding:120px 8vw; background:var(--moss); color:#f4efe6; display:grid; grid-template-columns:.42fr 1.75fr .9fr; gap:4vw; align-items:start; }
.pricing h2 { font-family:"Cormorant Garamond",Georgia,serif; font-size:clamp(3.2rem,5vw,5.8rem); font-weight:400; line-height:.95; letter-spacing:-.035em; margin:0; }
.price-heading { display:flex; flex-direction:column; gap:42px; }
.price-from { margin:0; font-family:"Cormorant Garamond",Georgia,serif; font-size:clamp(6.5rem,10vw,12.5rem); line-height:.78; letter-spacing:-.065em; color:#fff8ed; white-space:nowrap; }
.price-from small { display:block; margin-bottom:12px; font:600 .6rem/1 var(--font-sans),sans-serif; text-transform:uppercase; letter-spacing:.17em; color:var(--sage); }
.pricing>div p { margin:0 0 25px; font-size:.82rem; line-height:1.8; color:rgba(255,255,255,.72); }
.pricing>div .price-note { margin-top:38px; padding-top:20px; border-top:1px solid rgba(255,255,255,.24); font-size:.65rem; text-transform:uppercase; letter-spacing:.1em; color:var(--sage); }
.terms { padding:140px 8vw 110px; background:#ebe2d5; }
.terms-head { display:grid; grid-template-columns:.65fr 1.35fr .9fr; gap:6vw; align-items:start; margin-bottom:80px; }
.terms-head h2 { font-family:"Cormorant Garamond",Georgia,serif; font-size:clamp(3.4rem,5.2vw,6.2rem); font-weight:400; line-height:.94; letter-spacing:-.035em; margin:0; }
.terms-head>p:last-child { margin:7px 0 0; font-family:"Cormorant Garamond",Georgia,serif; font-size:1.3rem; line-height:1.55; color:var(--moss); }
.terms-list { border-top:1px solid var(--line); }
.terms-list details { border-bottom:1px solid var(--line); }
.terms-list summary { list-style:none; cursor:pointer; display:grid; grid-template-columns:55px 1fr auto; gap:25px; align-items:center; padding:27px 0; font-family:"Cormorant Garamond",Georgia,serif; font-size:clamp(1.45rem,2.2vw,2.35rem); }
.terms-list summary::-webkit-details-marker { display:none; }
.terms-list summary span { font:600 .6rem/1 var(--font-sans),sans-serif; letter-spacing:.17em; color:var(--moss); }
.terms-list summary i { font:300 1.5rem/1 var(--font-sans),sans-serif; font-style:normal; transition:transform .35s; }
.terms-list details[open] summary i { transform:rotate(45deg); }
.terms-list details>div { padding:0 7vw 34px 80px; animation:termsIn .35s ease both; }
.terms-list details p { max-width:860px; margin:0; font-size:.83rem; line-height:1.85; opacity:.76; }
.terms-legal { max-width:780px; margin:50px 0 0 80px; font-size:.62rem; line-height:1.7; text-transform:uppercase; letter-spacing:.1em; color:var(--moss); }
@keyframes termsIn { from{opacity:0;transform:translateY(-6px)} to{opacity:1;transform:none} }
.testimonials { padding:140px 8vw; background:var(--paper); }
.testimonial-intro { display:grid; grid-template-columns:.7fr 1.2fr 1fr; gap:6vw; align-items:start; }
.testimonial-intro h2 { font-family:"Cormorant Garamond",Georgia,serif; font-size:clamp(3.5rem,5.5vw,6.4rem); font-weight:400; letter-spacing:-.035em; line-height:.92; margin:0; }
.testimonial-intro>p:last-child { font-size:.84rem; line-height:1.8; margin:5px 0 0; }
.testimonial-placeholders { display:grid; grid-template-columns:repeat(3,1fr); margin-top:80px; border-top:1px solid var(--line); }
.testimonial-placeholders article { padding:32px 3vw 15px 0; min-height:270px; border-right:1px solid var(--line); }
.testimonial-placeholders article+article { padding-left:3vw; }
.testimonial-placeholders article:last-child { border-right:0; }
.testimonial-placeholders span { font-size:.65rem; letter-spacing:.16em; color:var(--moss); }
.testimonial-placeholders blockquote { font-family:"Cormorant Garamond",Georgia,serif; font-size:2rem; line-height:1.2; margin:45px 0 25px; }
.testimonial-placeholders p { font-size:.72rem; line-height:1.65; opacity:.56; }
.contact { padding:140px 8vw; background:var(--walnut-deep); color:#fff8ed; display:grid; grid-template-columns:.74fr .48fr 1.1fr; gap:4vw; align-items:start; }
.contact h2 { font-size:clamp(4rem,6.6vw,7.5rem); }
.contact-heading>p:not(.eyebrow) { max-width:480px; line-height:1.8; color:rgba(255,248,237,.72); }
.contact-heading>a { display:inline-block; margin-top:30px; padding-bottom:6px; border-bottom:1px solid rgba(255,255,255,.45); font-size:.82rem; }
.contact-image { margin:12px 0 0; align-self:start; }
.contact-image>div { height:360px; background:#473b31 url('assets/skrin-contact.png') center/cover no-repeat; filter:saturate(.72); transition:filter .5s; }
.contact-image:hover>div { filter:saturate(.92); }
.contact-image figcaption { color:var(--sage); }
.contact-form { padding-top:12px; min-height:600px; }
.form-progress { display:grid; grid-template-columns:auto 1fr auto; gap:14px; align-items:center; margin-bottom:55px; font-size:.6rem; letter-spacing:.15em; color:rgba(255,255,255,.55); }
.form-progress>div { height:1px; background:rgba(255,255,255,.2); }
.form-progress i { display:block; height:1px; background:#fff8ed; transition:width .5s cubic-bezier(.2,.65,.25,1); }
.form-step { display:none; animation:formIn .45s ease both; }
.form-step.active { display:block; }
.step-kicker { font-size:.62rem; text-transform:uppercase; letter-spacing:.18em; color:var(--sage); }
.form-step h3 { font-family:"Cormorant Garamond",Georgia,serif; font-size:clamp(2.4rem,3.6vw,4.2rem); font-weight:400; line-height:1; margin:16px 0 45px; }
@keyframes formIn { from{opacity:0;transform:translateX(14px)} to{opacity:1;transform:none} }
.field-pair { display:grid; grid-template-columns:1fr 1fr; gap:32px; }
.contact-form label { display:block; margin-bottom:30px; font-size:.65rem; text-transform:uppercase; letter-spacing:.15em; color:rgba(255,248,237,.72); }
.contact-form label span { opacity:.55; text-transform:none; letter-spacing:0; }
.contact-form input,.contact-form textarea,.contact-form select { width:100%; border:0; border-bottom:1px solid rgba(255,255,255,.38); border-radius:0; background:transparent; color:#fff8ed; font:400 .9rem/1.6 var(--font-sans),sans-serif; padding:12px 0; outline:none; resize:vertical; transition:border-color .2s; }
.contact-form select { appearance:none; background:linear-gradient(45deg,transparent 50%,#fff8ed 50%) calc(100% - 8px) 52%/6px 6px no-repeat; }
.contact-form select option { color:var(--ink); }
.contact-form textarea { border:1px solid rgba(255,255,255,.32); padding:16px; margin-top:12px; }
.contact-form input:focus,.contact-form textarea:focus { border-color:#fff8ed; }
.contact-form input::placeholder,.contact-form textarea::placeholder { color:rgba(255,248,237,.35); }
.wizard-actions { display:flex; justify-content:flex-end; gap:25px; margin-top:35px; }
.wizard-actions button,.form-footer button { border:0; border-bottom:1px solid rgba(255,255,255,.5); background:transparent; color:#fff8ed; padding:12px 0; font-size:.66rem; text-transform:uppercase; letter-spacing:.12em; cursor:pointer; }
.wizard-actions .back,.form-footer .back { margin-right:auto; opacity:.55; }
.form-footer { display:flex; justify-content:space-between; align-items:center; gap:30px; }
.form-footer p { font-size:.65rem; line-height:1.6; max-width:220px; opacity:.55; }
.form-footer button[type="submit"] { border:1px solid rgba(255,255,255,.55); width:190px; height:72px; border-radius:50%; transition:.2s; }
.form-footer button[type="submit"]:hover,.form-footer button[type="submit"]:focus-visible { background:#fff8ed; color:var(--walnut-deep); }
.form-status { min-height:20px; font-size:.68rem; color:var(--sage); }
footer { background:#211712; color:#eee9df; padding:80px 5vw 35px; display:grid; grid-template-columns:1fr 1fr; gap:35px; align-items:end; }
footer>p { font-family:"Cormorant Garamond",Georgia,serif; font-size:2rem; margin:0; }
footer>div { display:flex; gap:25px; justify-content:end; font-size:.75rem; }
footer small { grid-column:1/-1; border-top:1px solid rgba(255,255,255,.2); padding-top:25px; opacity:.5; }
@media (max-width:760px) {
  .site-header { grid-template-columns:1fr auto; height:76px; } .site-header nav { display:none; } .header-actions { gap:14px; } .header-cta { padding:12px 0; font-size:.58rem; } .language-switch { font-size:.58rem; }
  .hero { min-height:720px; } .hero-copy { padding-left:7vw; width:92vw; } .hero h1 { font-size:3.8rem; } .hero .eyebrow { max-width:290px; line-height:1.65; } .image-note { display:none; }
  .product-summary { padding:75px 7vw; grid-template-columns:1fr; gap:40px; } .product-summary ol { grid-template-columns:1fr; } .product-summary li,.product-summary li+li { min-height:270px; padding:25px; border:0; } .product-summary li span { margin-bottom:auto; } .product-summary li strong { min-height:0; } .product-summary li:hover { transform:none; }
  .intro,.story-grid,.object,.founder,.generations { grid-template-columns:1fr; } .intro { padding:95px 7vw; row-gap:35px; } .intro>.section-label,.intro>div,.intro-object { grid-column:1; grid-row:auto; } .intro h2 { margin-top:20px; } .name-story { grid-template-columns:1fr; gap:15px; } .intro-object { min-height:510px; margin-top:20px; } .intro-main-image { width:100%; height:470px; } .intro-detail-image { width:46%; height:190px; right:-2vw; bottom:25px; border-width:6px; } .intro-object figcaption { width:70%; margin-top:12px; }
  .story-image { min-height:500px; } .story-copy { padding:90px 7vw; }
  .founder { padding:95px 7vw; } .founder-columns { grid-template-columns:1fr; gap:30px; margin-top:50px; } .founder-image { grid-column:1; grid-row:auto; margin-top:45px; } .founder-image>div { height:460px; } .generations { padding:95px 7vw; gap:40px; } .generations-image { margin-top:25px; } .generations-image>div { min-height:440px; } .generations-image figcaption { left:18px; right:18px; font-size:1.15rem; }
  .process { padding:95px 7vw; } .process-head { display:block; } .process-head h2 { margin-top:55px; }
  .steps { grid-template-columns:1fr; } .steps article,.steps article+article { padding:30px 0; border-right:0; border-bottom:1px solid var(--line); min-height:auto; } .steps h3 { margin:20px 0 10px; }
  .included { padding:95px 7vw; } .included-head { grid-template-columns:1fr; gap:30px; } .contents-grid { grid-template-columns:1fr; margin-top:55px; } .contents-grid article,.contents-grid article:nth-child(even) { padding:30px 0; border-right:0; }
  .object { padding:95px 7vw; gap:0; } .object-craft { grid-column:1; grid-row:auto; margin-top:45px; } .object-craft>div { height:430px; } .pricing { padding:95px 7vw; grid-template-columns:1fr; gap:35px; } .price-from { font-size:clamp(4rem,18vw,6.5rem); white-space:normal; } .testimonials { padding:95px 7vw; } .testimonial-intro { grid-template-columns:1fr; gap:30px; } .testimonial-placeholders { grid-template-columns:1fr; margin-top:55px; } .testimonial-placeholders article,.testimonial-placeholders article+article { padding:30px 0; border-right:0; border-bottom:1px solid var(--line); min-height:auto; }
  .terms { padding:95px 7vw 80px; } .terms-head { grid-template-columns:1fr; gap:28px; margin-bottom:55px; } .terms-head h2 { font-size:3.7rem; } .terms-list summary { grid-template-columns:34px 1fr auto; gap:12px; padding:23px 0; font-size:1.45rem; } .terms-list details>div { padding:0 0 28px 46px; } .terms-legal { margin:40px 0 0; }
  .craft-detail { padding:90px 0 0; } .detail-copy { grid-template-columns:1fr; gap:28px; margin:0 7vw 60px; } .detail-copy h2 { font-size:3.7rem; } .detail-gallery { grid-template-columns:1fr; } .detail-visual { min-height:570px; } .detail-point { font-size:.52rem; } .detail-point span { max-width:105px; line-height:1.35; } .closed-joint { left:6%; top:64%; } .closed-grain { left:40%; top:29%; } .closed-close { right:4%; top:54%; } .open-letter { left:5%; top:43%; } .open-photos { left:39%; top:49%; } .open-archive { right:3%; top:58%; }
  .architecture { padding:95px 0 75px; } .architecture-head { grid-template-columns:1fr; gap:28px; margin:0 7vw 55px; } .architecture-head h2 { font-size:3.7rem; } .drawing-grid { grid-template-columns:1fr; border-left:0; border-right:0; } .drawing-card { padding:32px 7vw; } .drawing-card svg { margin-left:-4vw; width:108%; } .drawing-card>p { min-height:0; } .drawing-exploded .exploded-visual { height:330px; margin-left:-7vw; margin-right:-7vw; } .architecture-note { margin:32px 7vw 0; }
  .contact { padding:100px 7vw; grid-template-columns:1fr; gap:55px; } .contact h2 { font-size:3.7rem; } .contact-image>div { height:390px; } .field-pair { grid-template-columns:1fr; gap:0; } .form-footer { align-items:flex-start; flex-direction:column; }
  footer { grid-template-columns:1fr; } footer>div { justify-content:start; flex-direction:column; gap:10px; } footer small { grid-column:auto; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .opening-sequence { display:none; } .motion-ready [data-reveal] { opacity:1; transform:none; transition:none; } .detail-image,.detail-point i,.generations-image>div { animation:none; } }
