@import "https://fonts.googleapis.com/css2?family=Italiana&family=Manrope:wght@300;400;500&family=Parisienne&display=swap";:root{--ink:#163c38;--deep:#0f3531;--cream:#f5f0e5;--paper:#fbf8f1;--sage:#aebbad;--gold:#a58b5d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Manrope,sans-serif;font-weight:300}a{color:inherit;text-decoration:none}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site-header{background:var(--deep);height:98px;color:var(--cream);z-index:10;justify-content:space-between;align-items:center;padding:0 clamp(24px,5vw,76px);display:flex;position:relative}.brand span{text-transform:uppercase;letter-spacing:.12em;font-family:Italiana,serif;font-size:clamp(18px,2vw,27px);display:block}.brand i{color:var(--sage);font-weight:400}.brand small{letter-spacing:.38em;text-transform:uppercase;opacity:.72;margin-top:7px;font-size:9px;display:block}nav{align-items:center;gap:clamp(22px,3vw,48px);display:flex}nav a{letter-spacing:.17em;text-transform:uppercase;padding:12px 0;font-size:11px;position:relative}nav a:after{content:"";background:var(--cream);width:0;height:1px;transition:all .25s;position:absolute;bottom:4px;left:0}nav a:hover:after{width:100%}nav a:focus-visible:after{width:100%}.menu-button{display:none}.hero{background:#cad2c4;align-items:center;min-height:calc(100svh - 98px);padding:7vh clamp(24px,8vw,130px);display:flex;position:relative;overflow:hidden}.hero-photo{background:linear-gradient(120deg,#0d2a2633,#0d2a2605),linear-gradient(145deg,#9aab9b 0%,#cbd2c3 45%,#778c80 100%);position:absolute;inset:0}.placeholder:before{content:"";border:1px solid #ffffff40;position:absolute;inset:7%}.placeholder span{letter-spacing:.25em;text-transform:uppercase;color:#ffffffa6;font-size:10px;position:absolute;bottom:5%;right:7%}.invitation{text-align:center;background:#f8f3e8f5;width:min(520px,45vw);padding:clamp(42px,6vw,88px) clamp(32px,5vw,78px);position:relative;box-shadow:0 28px 80px #07272226}.script{color:var(--gold);margin:0 0 15px;font-family:Parisienne,cursive;font-size:clamp(22px,2.3vw,34px)}h1,h2{font-family:Italiana,serif;font-weight:400}h1{text-transform:uppercase;letter-spacing:.025em;margin:0;font-size:clamp(39px,5vw,73px);line-height:.96}h1 em{color:var(--gold);font-size:.72em;font-style:italic}.rule{background:var(--gold);width:46px;height:1px;margin:28px auto}.date{text-transform:uppercase;letter-spacing:.13em;margin:0;font-family:Italiana,serif;font-size:17px}.place{text-transform:uppercase;letter-spacing:.3em;margin:10px 0 0;font-size:10px}.scroll-cue{color:#fff;font-size:24px;animation:2s infinite float;position:absolute;bottom:22px;left:50%}@keyframes float{50%{transform:translateY(7px)}}.welcome{text-align:center;max-width:900px;margin:auto;padding:clamp(88px,12vw,180px) 24px;position:relative}.eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:.34em;margin:0 0 18px;font-size:10px;font-weight:500}.welcome h2,.countdown h2{margin:0 auto 28px;font-size:clamp(38px,5vw,66px);line-height:1.12}.lead{color:#51645f;max-width:650px;margin:auto;font-size:15px;line-height:1.9}.monogram{border:1px solid var(--sage);letter-spacing:.12em;border-radius:50%;place-items:center;width:110px;height:110px;margin:55px auto 0;font-family:Italiana;font-size:25px;display:grid}.monogram span{color:var(--gold)}.countdown{background:var(--deep);color:var(--cream);text-align:center;padding:clamp(84px,10vw,140px) 24px}.eyebrow.light{color:#b5c3b4}.countdown-grid{grid-template-columns:repeat(4,1fr);max-width:850px;margin:60px auto 0;display:grid}.countdown-grid div{border-right:1px solid #f5f0e533}.countdown-grid div:last-child{border:0}.countdown-grid strong{font-variant-numeric:tabular-nums;font-family:Italiana;font-size:clamp(47px,6vw,80px);font-weight:400;display:block}.countdown-grid span{letter-spacing:.28em;text-transform:uppercase;opacity:.75;margin-top:12px;font-size:9px;display:block}.section{padding:clamp(90px,11vw,160px) clamp(24px,7vw,110px)}.section-heading{text-align:center;max-width:700px;margin:0 auto clamp(58px,7vw,100px)}.section-heading h2,.map-copy h2,.rsvp-intro h2{margin:0 0 24px;font-size:clamp(40px,5vw,66px);line-height:1.1}.section-heading>p:last-child,.map-copy>p,.rsvp-intro>p{color:#60716c;font-size:14px;line-height:1.85}.schedule{max-width:1150px;margin:auto}.schedule article{background:linear-gradient(145deg,#91a393,#c5cec1);grid-template-columns:1fr 1fr;min-height:430px;margin-bottom:70px;display:grid;position:relative}.schedule article:before{content:"Bilde fra dagen";color:#ffffffb8;letter-spacing:.25em;text-transform:uppercase;place-items:center;font-size:9px;display:grid}.schedule article>div{background:var(--cream);flex-direction:column;justify-content:center;padding:clamp(48px,6vw,90px);display:flex}.schedule article.reverse:before{order:2}.schedule article.reverse>div{order:1}.number{background:var(--deep);width:58px;height:58px;color:var(--cream);z-index:2;border-radius:50%;place-items:center;font-family:Italiana;display:grid;position:absolute;top:36px;left:50%;transform:translate(-50%)}.time{text-transform:uppercase;letter-spacing:.2em;color:var(--gold);font-size:9px;font-weight:500}.schedule h3,.stay h3{margin:12px 0 18px;font-family:Italiana;font-size:clamp(32px,3vw,45px);font-weight:400}.schedule p,.stay-copy>p{color:#596b66;font-size:14px;line-height:1.8}.schedule a,.stay a{text-transform:uppercase;letter-spacing:.15em;border-bottom:1px solid var(--sage);align-self:flex-start;margin-top:16px;padding-bottom:6px;font-size:9px;font-weight:500}.image-break{background:linear-gradient(#0f353159,#0f353185),linear-gradient(125deg,#617b6e,#a8b7a7 55%,#49665b);place-items:center;height:min(72vw,760px);min-height:500px;display:grid;position:relative}.image-break blockquote{color:#fff;text-align:center;max-width:800px;padding:25px;font-family:Italiana;font-size:clamp(32px,4vw,60px);line-height:1.3;position:relative}.image-break>span{bottom:5%;left:7%;right:auto}.stay-grid{grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,44px);max-width:1250px;margin:auto;display:grid}.stay-grid article{border-top:1px solid #cbd2c7}.stay-photo{background:linear-gradient(145deg,#839589,#b9c3b6);height:clamp(260px,31vw,430px);position:relative}.photo-2{background:linear-gradient(155deg,#667c72,#a5b3a6)}.photo-3{background:linear-gradient(125deg,#a9b5a6,#71877d)}.stay-copy{padding:32px 8px}.stay h3{font-size:32px}.map-section{background:var(--deep);color:var(--cream);grid-template-columns:minmax(320px,42%) 1fr;display:grid}.map-copy{padding:clamp(70px,9vw,135px) clamp(34px,7vw,110px)}.map-copy>p{color:#c7d0c8}.map-copy ul{letter-spacing:.12em;text-transform:uppercase;border-top:1px solid #ffffff26;grid-template-columns:1fr 1fr;gap:20px;margin:40px 0 0;padding:30px 0 0;font-size:10px;list-style:none;display:grid}.pin{background:#d2b57c;border-radius:50%;width:7px;height:7px;margin-right:10px;display:inline-block}.pin.party{background:#8daf9f}.pin.hotel{background:#d8ded3}.pin.parking{background:#8eaaae}.map-placeholder{background-color:#e3e1d7;background-image:linear-gradient(28deg,#0000 48%,#6880744d 49% 51%,#0000 52%),linear-gradient(125deg,#0000 45%,#fffc 46% 50%,#0000 51%);min-height:620px;position:relative;overflow:hidden}.map-placeholder:after{content:"";border:12px solid #6d919d52;border-radius:50%;width:80%;height:42%;position:absolute;top:25%;left:5%;transform:rotate(-15deg)}.map-placeholder>span{color:#667a72;letter-spacing:.2em;text-transform:uppercase;font-size:9px;position:absolute;bottom:25px;right:25px}.map-marker{z-index:2;background:var(--deep);color:#fff;border-radius:50% 50% 50% 0;place-items:center;width:40px;height:40px;display:grid;position:absolute;transform:rotate(-45deg);box-shadow:0 4px 15px #53645e55}.map-marker:first-letter{transform:rotate(45deg)}.m1{top:28%;left:25%}.m2{top:55%;right:30%}.m3{background:var(--gold);bottom:18%;left:45%}.practical{background:var(--cream)}.faq-grid{border-top:1px solid #bfc8bd;max-width:950px;margin:auto}.faq-grid details{border-bottom:1px solid #bfc8bd;padding:0 4px}.faq-grid summary{cursor:pointer;padding:28px 45px 28px 0;font-family:Italiana;font-size:23px;list-style:none;position:relative}.faq-grid summary::-webkit-details-marker{display:none}.faq-grid summary:after{content:"+";font-family:Manrope;font-weight:300;position:absolute;right:4px}.faq-grid details[open] summary:after{content:"–"}.faq-grid details p{color:#5a6c67;max-width:700px;margin:0 0 30px;font-size:14px;line-height:1.8}.rsvp{background:var(--paper);grid-template-columns:1fr 1.15fr;display:grid}.rsvp-intro{color:var(--cream);background:linear-gradient(#0f3531d4,#0f3531e8),linear-gradient(130deg,#799084,#b6c1b4);flex-direction:column;justify-content:center;padding:clamp(80px,9vw,145px) clamp(35px,8vw,120px);display:flex}.rsvp-intro .script{font-size:35px}.rsvp-intro>p{color:#d6ddd6}.rsvp-date{letter-spacing:.2em;text-transform:uppercase;border-top:1px solid #ffffff40;margin-top:50px;padding-top:28px;font-size:9px;line-height:2}.rsvp-date strong{font-family:Italiana;font-size:23px;font-weight:400}.rsvp form{padding:clamp(70px,8vw,120px) clamp(35px,8vw,120px)}form>label,fieldset legend{text-transform:uppercase;letter-spacing:.16em;margin-bottom:28px;font-size:9px;font-weight:500;display:block}input[type=text],textarea{width:100%;color:var(--ink);resize:vertical;background:0 0;border:0;border-bottom:1px solid #aeb9ae;outline:none;margin-top:7px;padding:14px 0;font:300 14px Manrope;display:block}input:focus,textarea:focus{border-color:var(--deep)}fieldset{border:0;margin:0 0 28px;padding:0}fieldset legend{margin-bottom:16px}.radio{align-items:center;margin-right:25px;font-size:13px;display:inline-flex}.radio input{accent-color:var(--deep);margin-right:8px}form button{border:1px solid var(--deep);background:var(--deep);color:var(--cream);text-transform:uppercase;letter-spacing:.16em;cursor:pointer;padding:17px 26px;font-size:9px;transition:all .2s}form button:hover{color:var(--deep);background:0 0}.form-note{color:#75847f;margin-top:15px;font-size:10px}footer{text-align:center;color:var(--cream);background:#0b2d2a;padding:70px 24px}.footer-mark{letter-spacing:.2em;font-family:Italiana;font-size:30px}.footer-mark i{color:var(--gold)}footer p{text-transform:uppercase;letter-spacing:.22em;margin:22px 0;font-size:9px}footer a{border-bottom:1px solid #ffffff4d;padding-bottom:4px;font-size:12px}footer small{opacity:.45;letter-spacing:.25em;text-transform:uppercase;margin-top:50px;font-size:8px;display:block}@media (max-width:900px){.stay-grid{grid-template-columns:1fr 1fr}.stay-grid article:last-child{display:none}.map-section,.rsvp{grid-template-columns:1fr}.map-placeholder{min-height:480px}.rsvp-intro{min-height:500px}}@media (max-width:760px){.site-header{height:76px;padding:0 20px}.brand span{font-size:17px}.brand small{font-size:7px}.menu-button{background:0 0;border:0;width:44px;height:44px;padding:12px;display:block}.menu-button b{background:var(--cream);height:1px;margin:7px 0;display:block}nav{background:var(--deep);border-top:1px solid #ffffff1f;flex-direction:column;gap:9px;padding:28px;display:none;position:absolute;top:76px;left:0;right:0}nav.open{display:flex}nav a{padding:10px;font-size:12px}.hero{background:var(--cream);min-height:auto;padding:0 0 44px;display:block}.hero-photo{height:55svh;min-height:390px;position:relative}.invitation{width:calc(100% - 36px);margin:-62px auto 0;padding:42px 22px}.invitation h1{font-size:44px}.scroll-cue{display:none}.welcome{padding-top:90px}.countdown-grid{gap:0;margin-top:42px}.countdown-grid strong{font-size:35px}.countdown-grid span{letter-spacing:.12em;font-size:7px}.schedule article{grid-template-columns:1fr;min-height:0;margin-bottom:30px}.schedule article:before{height:280px}.schedule article.reverse:before{order:1}.schedule article.reverse>div{order:2}.schedule article>div{padding:48px 30px}.number{top:250px;left:30px;transform:none}.image-break{height:80svh;min-height:520px}.stay-grid{grid-template-columns:1fr}.stay-grid article:last-child{display:block}.stay-photo{height:360px}.map-copy ul{grid-template-columns:1fr}.map-placeholder{min-height:380px}.rsvp-intro{min-height:520px}.radio{margin:0 0 12px;display:flex}.rsvp form{padding-top:70px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.scroll-cue{animation:none}}
