/* Shared pages: deep teal, metallic gold, and the supplied wedding bands. */
[hidden]{display:none!important}.site-header nav{gap:20px}.site-header nav a{font-size:.875rem}.site-header .nav-wrap{gap:22px}.nav-ring{width:44px;height:44px;top:-32px;font-size:0;filter:drop-shadow(0 0 6px #b8913980)}.nav-ring img{width:44px;height:44px;object-fit:contain}.site-header nav a:hover .nav-ring,.site-header nav a:focus-visible .nav-ring{animation:realRingHover 2.2s ease-in-out infinite}@keyframes realRingHover{0%,100%{transform:translateX(-50%) translateY(3px) rotate(-10deg) scale(1)}50%{transform:translateX(-50%) translateY(-4px) rotate(13deg) scale(1.12)}}
.ring-stage{position:relative;isolation:isolate;overflow:hidden}.floating-rings{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:-1}.floating-ring{position:absolute;opacity:.12;object-fit:contain;animation:floatRing 15s ease-in-out infinite;filter:drop-shadow(0 0 20px #d9b57218);will-change:transform}.ring-1{width:160px;left:2%;top:8%;animation-delay:-3s;--tilt:-18deg}.ring-2{width:220px;right:1%;top:16%;animation-duration:19s;--tilt:22deg}.ring-3{width:120px;left:23%;bottom:-8%;animation-delay:-7s;--tilt:12deg}.ring-4{width:85px;right:26%;top:-14%;animation-delay:-10s;--tilt:-20deg}@keyframes floatRing{0%,100%{transform:translate3d(0,0,0) rotate(var(--tilt,0deg))}50%{transform:translate3d(16px,-26px,0) rotate(calc(var(--tilt,0deg) + 17deg))}}.hero .floating-rings{z-index:-1}.hero .ring-1{left:1%;top:1%;width:110px;opacity:.16}.hero .ring-2{right:1%;top:4%;width:135px;opacity:.2}.hero .ring-3{left:42%;bottom:4%;width:100px;opacity:.14}.hero .ring-4{display:none}.page-intro{background:radial-gradient(ellipse at 50% 0%,#06493d,#011b17 75%);text-align:center;padding:74px 0 66px;border-bottom:1px solid var(--line)}.page-intro h1,.about-lead h1,.contact h1{font-size:clamp(3.1rem,5.8vw,5.6rem);line-height:1.03;margin:16px 0 24px}.intro-copy{max-width:680px;margin:0 auto;color:var(--muted);font-size:1rem}.page-cta{padding:62px 0;text-align:center;background:radial-gradient(ellipse at center,#053c31,#001612 80%)}.page-cta h2{font-size:clamp(2.5rem,4vw,4rem);margin:18px auto 28px}.page-cta .container{position:relative}.family-tagline{font-family:var(--serif);font-size:1.8rem!important;line-height:1.3;color:#e7cb85!important}.story-copy .metal{margin-top:16px}.founders-teaser img{object-position:center 25%}.founders-teaser .handwritten{font-size:3.2rem;bottom:9%;right:6%}.founders-teaser:after{background:linear-gradient(0deg,#00100dcc,transparent 42%),linear-gradient(90deg,#010a09,transparent 16%)}.split-copy{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.split-copy h2{margin:15px 0 23px}.split-copy p:not(.eyebrow){color:var(--muted);margin-bottom:25px;font-size:1rem}.date-teaser{background:radial-gradient(ellipse at right,#073e32,#011511 80%)}.date-teaser-list>a{display:flex;align-items:center;gap:24px;padding:25px 0;border-bottom:1px solid var(--line)}.date-teaser-list>a>span,.steps-list article>span{font-family:var(--serif);font-size:2rem;color:var(--gold)}.date-teaser-list h3{font-size:1.9rem;color:#e8d39f}.date-teaser-list p{font-size:.875rem!important;margin:8px 0 0!important}.date-teaser-list a:hover h3{color:#fff3d1}.event-teaser{padding:42px 0;background:linear-gradient(115deg,#132c23,#02110e)}.event-teaser-grid{display:grid;grid-template-columns:150px 1fr auto;gap:34px;align-items:center}.event-date{text-align:center;border-right:1px solid var(--line);padding-right:34px}.event-date strong{font-family:var(--serif);font-size:5.5rem;line-height:1;display:block;color:var(--gold)}.event-date span{font-size:.75rem;letter-spacing:.1em;display:block;margin-top:8px}.event-teaser h2{font-size:2.6rem;margin:8px 0 12px}.event-teaser p:not(.eyebrow){font-size:1rem;color:var(--muted)}.about-lead{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:7%}.about-lead>div>p:not(.eyebrow){color:var(--muted);font-size:1rem;margin-bottom:24px}.about-lead figure{margin:0}.about-lead figure img{border-radius:3px;border:1px solid var(--line);width:100%;height:auto}.about-lead figcaption{font-size:.875rem;color:#bdcbbf;text-align:center;padding:14px 10px}.about-lead .metal{margin-top:7px}.founder-gallery{display:grid;grid-template-columns:1fr 1fr;gap:40px;width:min(900px,100%);margin:auto}.founder-gallery figure{margin:0;background:#071d17;border:1px solid var(--line);padding:12px}.founder-gallery img{width:100%;height:560px;object-fit:contain;background:#000}.founder-gallery figcaption{padding:23px 17px}.founder-gallery h3{font-size:2rem;color:#e9d2a2}.founder-gallery p{font-size:1rem;color:var(--muted);margin-top:12px}.mission-support{padding:70px 0;background:#00211a}.giving-card{border:1px solid var(--line);padding:35px;text-align:center;background:#041811e8;border-radius:5px}.giving-card p{margin-bottom:7px!important}.giving-card strong{display:block;color:#efd799;font-family:var(--serif);font-size:3.2rem;line-height:1.1;margin-bottom:25px;overflow-wrap:anywhere}.giving-card>a{display:flex;justify-content:center;margin:16px auto 0;width:fit-content}.giving-card>a:not(.metal){font-size:.875rem;text-decoration:underline;text-underline-offset:5px}.steps-list article{display:flex;align-items:flex-start;gap:25px;margin:27px 0}.steps-list h3{font-size:1.9rem;color:#ead5a6}.steps-list p{margin:10px 0 0!important}.prompt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:40px}.prompt-grid article{border:1px solid var(--line);padding:30px;background:#09251e}.prompt-grid span{font-size:.875rem;color:var(--gold)}.prompt-grid h3{font-size:2rem;margin-top:20px;line-height:1.2}.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.contact-cards article{border-top:1px solid var(--line);padding:30px 0}.contact-cards h2{font-size:2.2rem;margin:15px 0 22px}.contact-cards article>a:not(.metal){display:block;font-size:1rem;overflow-wrap:anywhere;color:#dfc689;margin:6px 0}.contact-cards p:not(.eyebrow){color:var(--muted);font-size:1rem;margin-bottom:22px}.contact-cards .metal{margin-top:17px}.contact-cards .button-row{gap:17px}.contact .floating-rings{z-index:-1}.event-detail{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:start}.event-flyer{position:sticky;top:130px}.event-flyer img{width:100%;height:auto;border:1px solid var(--line)}.event-flyer>.metal{margin-top:22px}.event-info h2{font-size:3.5rem;margin:14px 0 20px}.event-info p{font-size:1rem;color:var(--muted)}.event-info .event-lead{font-size:1.15rem;color:var(--light)}.event-facts{margin:26px 0}.event-facts>div{display:grid;grid-template-columns:110px 1fr;gap:20px;border-bottom:1px solid var(--line);padding:16px 0}.event-facts dt{color:var(--gold);font-size:.875rem}.event-facts dd{margin:0;font-size:1rem;line-height:1.6}.event-facts small{font-size:.875rem;color:var(--muted)}.event-highlight{padding:20px;border:1px solid var(--line);border-left:3px solid var(--gold);background:#0b2e22;margin-bottom:25px}.event-highlight .eyebrow{color:var(--gold)}.event-payment{margin:25px 0}.event-payment p+p{margin-top:16px}.event-info .button-row{gap:18px}.map-link{display:inline-block;margin-top:25px;color:var(--gold);text-decoration:underline;text-underline-offset:5px}.footer-top{grid-template-columns:85px 1.15fr 1.1fr 1.2fr;gap:28px}.footer-statement{font-size:1.45rem}.footer-links{font-size:.875rem;gap:12px}.footer-support .metal{display:flex;margin:12px 0;width:fit-content;font-size:.875rem}.footer-support p{font-size:.875rem}.footer-bottom{font-size:.75rem}
.home-moments{background:linear-gradient(120deg,#041713,#092b22);padding:74px 0}.home-moments-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:7%;align-items:center}.home-moments h2{margin:15px 0 22px}.home-moments p:not(.eyebrow){color:var(--muted);font-size:1rem}.moment-photos{display:grid;grid-template-columns:1fr 1fr;gap:22px}.moment-photos figure{margin:0;position:relative;overflow:hidden;border:1px solid var(--line);background:#020c0c}.moment-photos img{width:100%;height:420px;object-fit:cover;object-position:center 25%}.moment-photos figure:nth-child(2) img{object-position:center 18%}.moment-photos figcaption{position:absolute;left:16px;right:16px;bottom:16px;background:#00110fc9;border:1px solid #d7b77266;color:#f1ddaa;padding:10px 12px;font-size:.875rem}.couple-feature{background:linear-gradient(120deg,#020d0c,#061f19);padding:66px 0}.couple-feature-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:7%;align-items:center}.couple-feature.reverse .couple-feature-grid>figure{order:2}.couple-feature figure{margin:0;overflow:hidden;border:1px solid var(--line);background:#020c0c;min-height:420px}.couple-feature img{width:100%;height:100%;min-height:420px;object-fit:cover;object-position:center}.couple-feature h2{margin:15px 0 22px}.couple-feature p:not(.eyebrow){color:var(--muted);font-size:1rem}
.cord-accent{display:block;width:min(480px,72%);height:auto;margin:24px auto 0;filter:drop-shadow(0 14px 18px #0009) drop-shadow(0 0 14px #f0c86845);opacity:.96}.cord-accent.align-left{margin:18px 0 22px;width:min(380px,82%)}.page-intro .cord-accent{margin-top:28px}.date-page-intro .cord-accent{margin-top:18px;margin-bottom:4px}.moments-carousel-section{background:radial-gradient(ellipse at center,#083326,#020e0c 78%);overflow:hidden}.moments-carousel{height:620px;display:grid;place-items:center;perspective:1300px;margin-top:10px}.carousel-stage{position:relative;width:260px;height:390px;transform-style:preserve-3d;animation:spinMoments 34s linear infinite}.carousel-card{position:absolute;inset:0;margin:0;border:1px solid #d7b77275;border-radius:8px;background:#020b0a;box-shadow:0 28px 55px #000b,0 0 24px #dcb55d22;overflow:hidden;transform:rotateY(calc(var(--i) * 36deg)) translateZ(430px);backface-visibility:hidden}.carousel-card img{width:100%;height:100%;object-fit:cover;object-position:center top}.carousel-card figcaption{position:absolute;left:12px;right:12px;bottom:12px;padding:9px 11px;background:#00110fd6;border:1px solid #d8b86770;color:#f5dd9f;font-size:.8125rem;text-align:center}.moments-carousel:hover .carousel-stage{animation-play-state:paused}@keyframes spinMoments{to{transform:rotateY(-360deg)}}
/* Date night: the activities are ready as soon as the page opens. */
.date-page-intro{padding:48px 0 35px;background:radial-gradient(ellipse at 75% 0%,#064735,#011711 85%);border-bottom:1px solid var(--line)}.date-page-intro h1{font-size:clamp(3.1rem,5vw,4.8rem);margin:12px 0 18px}.date-page-intro>.container>p:not(.eyebrow){color:var(--muted);font-size:1rem}.date-jump-links{display:flex;justify-content:flex-start;gap:17px;margin-top:24px}.date-jump-links .metal{font-size:.875rem;padding:10px 24px;min-height:44px}.date-jump-links a:after{display:initial;height:auto;bottom:-80%;background:linear-gradient(90deg,transparent,#fff9,transparent)}.date-ideas-section{padding-top:50px;padding-bottom:70px}.ideas-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:30px}.ideas-heading h2{font-size:2.9rem;margin-top:12px}.idea-filters{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end;max-width:570px}.idea-filters .metal{font-size:.875rem;padding:10px 18px;min-height:43px}.idea-filters button[aria-pressed=true]{outline:2px solid #fbe4ab;outline-offset:4px}.idea-card{display:grid;grid-template-columns:310px 1fr;border:1px solid var(--line);border-radius:6px;background:linear-gradient(130deg,#123c2d,#031711);overflow:hidden}.idea-art{padding:40px 30px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-right:1px solid var(--line);background:radial-gradient(ellipse,#2c4930,#001c15)}.idea-art img{width:220px;max-width:100%;animation:floatRing 13s ease-in-out infinite}.idea-art span{font-family:var(--serif);font-size:3.2rem;font-style:italic;color:#e1c480;line-height:1.1;margin-top:20px}.idea-content{padding:35px 40px}.idea-meta{display:flex;flex-wrap:wrap;gap:8px 14px;font-size:.75rem;color:#c4d2c5}.idea-meta span+span:before{content:'·';margin-right:14px;color:var(--gold)}.idea-content h3{font-size:2.7rem;color:#eed9a5;margin:16px 0 18px}.idea-content>p{font-size:1rem;color:#c4cec4}.idea-question{border-left:2px solid #af904e;margin:23px 0;padding-left:20px}.idea-question strong{display:block;color:var(--gold);font-weight:500;font-size:.875rem;margin-bottom:7px}.idea-question span{font-family:var(--serif);font-size:1.45rem;color:#f3e6c8;line-height:1.3;display:block}.idea-actions{display:flex;gap:25px;align-items:center;margin-top:25px}.idea-actions>span{font-size:.875rem;color:var(--muted)}.quiz-section{background:#011a14}.quiz-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:9%;align-items:start}.quiz-layout h2{margin:15px 0 23px}.quiz-layout>div>p:not(.eyebrow){font-size:1rem;color:var(--muted);margin-bottom:20px}.quiz-layout .small-note{font-size:.875rem!important}.quiz-card{border:1px solid var(--line);border-radius:5px;background:linear-gradient(135deg,#103627,#031c14);padding:32px 35px}.quiz-topline{display:flex;justify-content:space-between;gap:20px;font-size:.875rem;color:#dcc58b}.quiz-topline>span:last-child{font-size:.75rem;letter-spacing:.08em;max-width:165px;text-align:right;line-height:1.5}.quiz-card progress{width:100%;height:5px;margin:18px 0 27px;display:block;accent-color:var(--gold);border:none;background:#214234}.quiz-card progress::-webkit-progress-bar{background:#214234}.quiz-card progress::-webkit-progress-value{background:var(--gold)}fieldset{border:0;padding:0;margin:0;min-width:0}legend{font-family:var(--serif);font-size:2rem;line-height:1.2;display:block;width:100%;margin-bottom:24px;color:#f2e6c7}.quiz-options{display:grid;grid-template-columns:1fr 1fr;gap:14px}.quiz-option{cursor:pointer;display:flex;align-items:center;justify-content:flex-start;gap:12px;border:1px solid #5b816b;border-radius:4px;background:linear-gradient(120deg,#054239,#11634c);padding:15px;font-size:1rem;box-shadow:inset 0 1px 1px #c4ffd044,0 3px 0 #001a11;transition:border-color .2s}.quiz-option:hover,.quiz-option:has(input:checked){border-color:#f4d998;background:linear-gradient(115deg,#b18843,#ecce8a);color:#102017}.quiz-option input{accent-color:#174632;min-width:18px;height:18px;margin:0}.inline-error{color:#ffceaa;font-size:.875rem;min-height:24px;margin-top:12px}.quiz-actions{display:flex;justify-content:space-between;gap:20px;margin-top:18px}.metal:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.metal:disabled:after{animation:none;display:none}#quiz-result h3{font-size:2.7rem;color:#ead29b;margin:20px 0}#quiz-result p{font-size:1rem;color:var(--muted);margin-bottom:20px}#quiz-result .result-prompt{border-left:2px solid var(--gold);padding-left:18px;color:#f1dfb9;margin:25px 0}#quiz-result .metal{margin:10px 12px 0 0}.games-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.game-card{padding:34px;border:1px solid var(--line);border-radius:6px;background:linear-gradient(145deg,#0c2d21,#031811);min-width:0}.game-card h3{font-size:2.5rem;color:#ead7a6;margin:15px 0 17px}.game-card>p:not(.eyebrow){color:var(--muted);font-size:1rem}.conversation-card{padding:32px 26px;margin:26px 0;background:radial-gradient(ellipse at 50% 0%,#225f42,#0a2e20);border:1px solid #9f9655;border-radius:5px;min-height:228px;display:flex;flex-direction:column;justify-content:center;text-align:center}.conversation-card>span{font-size:.75rem;color:var(--gold);letter-spacing:.12em;text-transform:uppercase}.conversation-card>p{font-family:var(--serif);font-size:2rem;line-height:1.25;color:#f4e7c2;margin-top:17px}.game-actions{display:flex;gap:15px;flex-wrap:wrap;align-items:center}.game-actions>span,.game-score{font-size:.875rem!important;color:var(--muted)}.prediction-board{padding-top:20px;min-height:310px}.prediction-stage{font-size:.75rem;letter-spacing:.08em;color:var(--gold);text-transform:uppercase}.prediction-board h4{font-family:var(--serif);font-size:1.9rem;line-height:1.2;font-weight:500;margin:13px 0 23px;color:#f5e3b9}.prediction-options{display:grid;grid-template-columns:1fr 1fr;gap:17px}.prediction-options .metal{padding:12px 14px;min-height:50px;gap:8px;font-size:.875rem}.prediction-pass{padding:25px 0}.prediction-pass>p{font-size:1rem;color:var(--muted);margin-bottom:25px}.prediction-result{background:#143e28;border-left:3px solid var(--gold);padding:23px;margin:5px 0 25px}.prediction-result h4{margin:0 0 13px}.prediction-result p{color:#c9d4c7;font-size:1rem}.prediction-game>.metal{margin-top:12px;font-size:.875rem;padding:9px 20px;min-height:42px}.memory-game{margin-top:28px}.memory-heading{display:flex;justify-content:space-between;gap:40px;align-items:center}.memory-heading p:not(.eyebrow){color:var(--muted);font-size:1rem}.memory-controls{display:flex;flex-direction:column;gap:15px;align-items:flex-end;white-space:nowrap}.memory-controls>span{font-size:.875rem;color:#d9c387}.memory-board{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;margin-top:30px}.memory-tile{border-radius:7px;min-height:125px;width:100%;padding:14px 6px;gap:0;flex-direction:column;white-space:normal;transform-style:preserve-3d}.memory-tile .card-back{font-family:var(--serif);font-size:1.9rem;color:#e6d091}.memory-tile .card-face{display:none;flex-direction:column;align-items:center;gap:8px;line-height:1.3}.card-face>span:first-child{font-size:2rem}.card-face>span:last-child{font-size:.875rem}.memory-tile.is-open .card-back,.memory-tile.is-matched .card-back{display:none}.memory-tile.is-open .card-face,.memory-tile.is-matched .card-face{display:flex}.memory-tile.is-matched{opacity:.75;box-shadow:inset 0 1px 1px #fff8,0 0 0 2px #cbe5b38c}.memory-tile.is-matched:after{display:none}.memory-tile:disabled{cursor:default;opacity:1}.noscript-note{padding:25px;background:#3a3316;border:1px solid var(--gold);margin-top:30px}
@media(max-width:1250px){.site-header nav{gap:14px}.site-header .nav-wrap{gap:15px}.site-header nav a{font-size:.8rem}.site-header .brand{width:83px}.site-header .nav-cta{padding:11px 18px;font-size:.75rem}.event-teaser-grid{grid-template-columns:110px 1fr auto;gap:24px}.event-teaser h2{font-size:2.25rem}.event-date{padding-right:20px}.idea-card{grid-template-columns:230px 1fr}.idea-art{padding:30px 20px}.idea-content{padding:30px}.idea-filters{max-width:430px}.quiz-layout{gap:5%}.game-card{padding:27px}.memory-tile{min-height:110px}.footer-top{grid-template-columns:75px 1fr 1fr 1.1fr;gap:22px}.footer-statement{font-size:1.2rem}.footer-support{padding-left:18px}.event-detail{gap:35px}}
@media(max-width:1100px){.site-header{height:87px}.site-header .brand img{height:78px;width:78px}.site-header .nav-wrap{justify-content:space-between}.menu-toggle{display:inline-flex;order:3;font-size:.875rem;padding:8px 17px;min-height:40px}.nav-cta{margin-left:auto;margin-right:10px}.site-header nav{display:none;position:absolute;top:86px;left:0;right:0;background:#001b19;border-bottom:1px solid var(--gold);padding:18px 6% 28px;align-items:stretch;flex-direction:column;gap:0;box-shadow:0 20px 30px #0008}.site-header nav.open{display:flex;max-height:calc(100dvh - 87px);overflow-y:auto}.site-header nav a{padding:14px 20px;font-size:1rem}.site-header nav a::after{display:none}.nav-ring{left:auto;right:6px;top:5px;width:40px;height:40px;transform:none!important}.nav-ring img{width:40px;height:40px}nav a.active .nav-ring{opacity:1;transform:none}.site-header nav a:hover .nav-ring,.site-header nav a:focus-visible .nav-ring{animation:mobileRingHover 2s ease-in-out infinite}@keyframes mobileRingHover{50%{rotate:15deg;translate:0 -3px}}.date-jump-links{position:static;background:none;display:flex;flex-direction:row;flex-wrap:wrap;padding:0;border:0;box-shadow:none;gap:17px}.date-jump-links a{padding:10px 22px}.date-jump-links a::after{display:initial}.founder-gallery img{height:480px}.about-lead h1{font-size:3.8rem}.event-teaser-grid{grid-template-columns:95px 1fr}.event-teaser-grid>.metal{grid-column:2;justify-self:start}.event-date{grid-row:1/3}.idea-filters{max-width:350px}.quiz-layout{grid-template-columns:.8fr 1.2fr}.quiz-card{padding:27px}.quiz-options{grid-template-columns:1fr}.quiz-layout h2{font-size:3.2rem}.memory-board{grid-template-columns:repeat(4,1fr)}.memory-heading{align-items:flex-start}.contact-cards{grid-template-columns:1fr 1fr}.contact-cards article:last-child{grid-column:1/3}.footer-top{grid-template-columns:80px 1fr 1fr}.footer-support{grid-column:1/4;display:flex;gap:25px;padding-left:0;align-items:center;border:0}.footer-support .metal{margin:0}.footer-statement{font-size:1.6rem}.event-flyer{position:static}}
@media(max-width:760px){.page-intro{padding:53px 0 47px}.page-intro h1{font-size:3.5rem}.floating-ring{opacity:.09}.ring-1{width:110px;left:-30px}.ring-2{width:130px;right:-20px}.page-cta{padding:50px 0}.split-copy,.about-lead,.quiz-layout{grid-template-columns:1fr;gap:35px}.about-lead{padding-top:50px}.about-lead h1{font-size:3.5rem}.about-lead figure{max-width:530px;margin:auto}.founder-gallery{gap:20px}.founder-gallery img{height:410px}.founder-gallery figcaption{padding:20px 7px}.founder-gallery h3{font-size:1.7rem}.mission-support{padding:50px 0}.event-detail{grid-template-columns:1fr;gap:40px}.event-flyer{max-width:580px;margin:auto}.event-info h2{font-size:3.3rem}.prompt-grid{grid-template-columns:1fr}.prompt-grid article{padding:25px}.prompt-grid h3{font-size:2.1rem}.date-page-intro{padding:38px 0 30px}.date-page-intro h1{font-size:3.4rem}.ideas-heading{display:block}.idea-filters{max-width:none;justify-content:flex-start;margin-top:26px;gap:14px}.idea-filters .metal{padding:8px 15px;min-height:42px}.idea-card{grid-template-columns:1fr}.idea-art{display:none}.idea-content{padding:30px}.idea-content h3{font-size:2.5rem}.quiz-layout h2{font-size:3rem}.quiz-options{grid-template-columns:1fr 1fr}.games-grid{grid-template-columns:1fr}.memory-heading{flex-direction:column;gap:25px}.memory-controls{align-items:flex-start}.memory-board{grid-template-columns:repeat(4,1fr);gap:12px}.memory-tile{min-height:105px}.game-card{padding:28px}.prediction-board{min-height:270px}.founders-teaser{height:480px!important}.event-teaser h2{font-size:2.5rem}.footer-links{font-size:.875rem}}
@media(max-width:540px){.site-header .nav-wrap{width:94%;gap:8px}.site-header .brand{width:66px}.site-header .brand img{width:66px;height:70px}.site-header .nav-cta{font-size:.75rem;padding:8px 12px;min-height:40px;margin-right:0}.menu-toggle{font-size:.75rem;padding:8px 12px;min-height:40px}.page-intro h1,.about-lead h1{font-size:3rem}.family-tagline{font-size:1.65rem!important}.page-intro .intro-copy{font-size:1rem}.page-cta h2{font-size:2.6rem}.date-teaser-list h3{font-size:1.8rem}.date-teaser-list>a{gap:20px;padding:23px 0}.event-teaser-grid{grid-template-columns:70px 1fr;gap:15px}.event-date{padding-right:15px}.event-date strong{font-size:4rem}.event-date span{font-size:.75rem;letter-spacing:0}.event-teaser h2{font-size:2rem;line-height:1.1}.event-teaser p.eyebrow{font-size:.75rem}.event-teaser p:not(.eyebrow){font-size:.875rem}.event-teaser-grid>.metal{font-size:.875rem;padding:11px 18px}.founder-gallery{grid-template-columns:1fr;max-width:390px;gap:30px}.founder-gallery img{height:auto;max-height:none;width:100%}.founder-gallery figcaption{padding:21px 13px}.founder-gallery h3{font-size:2rem}.giving-card{padding:27px}.giving-card strong{font-size:2.9rem}.contact-cards{grid-template-columns:1fr}.contact-cards article:last-child{grid-column:auto}.event-info h2{font-size:3rem}.event-facts>div{grid-template-columns:95px 1fr;gap:15px}.event-facts dd{font-size:.95rem}.date-page-intro h1{font-size:2.9rem}.date-jump-links{gap:12px;justify-content:flex-start}.date-jump-links .metal{font-size:.75rem;padding:10px 15px;min-height:43px}.date-ideas-section{padding-top:36px;padding-bottom:50px}.ideas-heading h2{font-size:2.65rem}.idea-filters{gap:13px}.idea-filters .metal{font-size:.75rem;padding:8px 14px}.idea-content{padding:25px 21px}.idea-content h3{font-size:2.3rem}.idea-meta{font-size:.75rem;gap:6px 10px}.idea-meta span+span:before{margin-right:10px}.idea-actions{flex-wrap:wrap;gap:18px}.idea-question{padding-left:15px}.quiz-card{padding:26px 20px}.quiz-options{grid-template-columns:1fr}.quiz-topline>span:last-child{max-width:125px;font-size:.75rem}legend{font-size:1.85rem}.quiz-actions{gap:13px}.quiz-actions .metal{padding:12px 19px;font-size:.875rem}.game-card{padding:25px 20px}.game-card h3{font-size:2.2rem}.conversation-card{padding:27px 18px;min-height:220px}.conversation-card>p{font-size:1.9rem}.game-actions{gap:18px}.prediction-options{gap:16px 12px}.prediction-options .metal{font-size:.875rem;padding:11px 10px}.memory-board{grid-template-columns:repeat(3,1fr);gap:12px}.memory-tile{min-height:100px}.memory-tile .card-back{font-size:1.6rem}.card-face>span:last-child{font-size:.75rem}.footer-top{grid-template-columns:70px 1fr}.footer-statement{font-size:1.4rem}.footer-links{grid-column:1/3;grid-template-columns:1fr 1fr}.footer-support{grid-column:1/3;display:flex;flex-wrap:wrap;gap:18px}.footer-support p{width:100%;margin:0}.footer-support .metal{font-size:.875rem;padding:10px 16px}.footer-bottom{font-size:.75rem}.hero .ring-1{width:70px}.hero .ring-2{width:90px}.hero .ring-3{left:auto;right:-10px;bottom:32%;width:110px}.founders-teaser{height:380px!important}.founders-teaser img{object-position:center 15%}}

/* Internal page photography and the metallic three strand mark. */
.page-intro{position:relative;min-height:430px;display:flex;align-items:center;isolation:isolate;overflow:hidden;background:#031b15}
.page-intro .page-hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2;filter:saturate(.85) contrast(1.05)}
.page-intro:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#00130fef 0%,#01221ad9 44%,#01221a88 100%);z-index:-1;pointer-events:none}
.page-intro .container{position:relative;z-index:1}
.date-page-intro{position:relative;isolation:isolate;overflow:hidden;background:#031b15}
.date-page-intro .date-hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 45%;z-index:-2;filter:saturate(.86) contrast(1.05)}
.date-page-intro:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#00130fee 0%,#01221ad4 48%,#01221a75 100%);z-index:-1;pointer-events:none}
.date-page-intro>.container{position:relative;z-index:1}
.about-video-figure{margin:0;background:#020b08;border:1px solid var(--line);border-radius:3px;overflow:hidden}
.about-video-figure video{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;background:#000}
.three-strand-panel{background:linear-gradient(120deg,#06261d,#01130f)}
.three-strand-figure{margin:0;border:1px solid #b08b48;background:#efe6d6;box-shadow:0 14px 35px #0008}
.three-strand-figure img{display:block;width:100%;height:auto;mix-blend-mode:multiply}
.three-strand-figure figcaption{padding:12px 16px;color:#5b431c;background:#f2e8d2;font-family:var(--serif);font-size:1.05rem;text-align:center}
.about-three-strand{max-width:430px;margin:28px 0 0}
.resource-feature{padding:0;background:#061f18}
.resource-feature .container{padding-top:0;padding-bottom:0}
.resource-feature img{width:100%;height:330px;object-fit:cover;object-position:center;border-left:1px solid var(--line)}
.contact{position:relative;isolation:isolate;overflow:hidden;background:#031b15}
.contact-hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;z-index:-2;opacity:.46;filter:saturate(.78)}
.contact:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#00130fe8,#01221ac9 58%,#01221a9c);z-index:-1;pointer-events:none}
.contact>.container{position:relative;z-index:1}
@media(max-width:760px){.page-intro{min-height:390px}.page-intro:after,.date-page-intro:after{background:linear-gradient(180deg,#00130fcf 0%,#01221ae6 100%)}.resource-feature img{height:260px;border-left:0;border-top:1px solid var(--line)}.about-three-strand{max-width:100%}}
@media(prefers-reduced-motion:reduce){.floating-ring,.idea-art img,.nav-ring,.metal:after{animation:none!important;will-change:auto}.nav-ring{transform:translateX(-50%)!important}.hero .floating-ring{opacity:.1}}

@media(max-width:900px){.home-moments-grid,.couple-feature-grid{grid-template-columns:1fr;gap:32px}.couple-feature.reverse .couple-feature-grid>figure{order:0}.moment-photos img{height:360px}.couple-feature figure,.couple-feature img{min-height:360px}.couple-feature{padding:54px 0}.home-moments{padding:58px 0}.moments-carousel{height:550px}.carousel-stage{width:220px;height:330px}.carousel-card{transform:rotateY(calc(var(--i) * 36deg)) translateZ(330px)}}
@media(max-width:540px){.moment-photos{grid-template-columns:1fr;max-width:380px}.moment-photos img{height:auto;max-height:560px}.couple-feature figure,.couple-feature img{min-height:0}.couple-feature img{height:auto}.couple-feature h2,.home-moments h2{font-size:2.55rem}.home-moments-grid{gap:28px}.cord-accent,.cord-accent.align-left{width:min(330px,86%)}.moments-carousel{height:470px;margin-top:0}.carousel-stage{width:176px;height:264px}.carousel-card{transform:rotateY(calc(var(--i) * 36deg)) translateZ(245px)}.carousel-card figcaption{font-size:.75rem;padding:7px}}
@media(max-width:390px){.carousel-stage{width:154px;height:231px}.carousel-card{transform:rotateY(calc(var(--i) * 36deg)) translateZ(210px)}.moments-carousel{height:420px}}
.home-moments .home-moments-grid{grid-template-columns:minmax(0,1fr);gap:32px}
.home-moments .moment-photos{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none;width:100%}
.home-moments .moment-photos img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:3/2;object-fit:contain;object-position:center}
.home-moments .moment-photos figcaption{position:static;border:0;border-top:1px solid var(--line);padding:16px;margin:0}
.gold-video-frame{width:min(100%,500px);margin:0 auto;padding:9px;border:1px solid #f8e4a4;border-radius:6px;background:linear-gradient(135deg,#735014 0%,#e7bb57 18%,#fff0b5 34%,#a97822 50%,#f2d88a 68%,#8c611e 84%,#edcf79 100%);box-shadow:0 12px 32px #0005,inset 0 0 0 2px #7e591a}
.gold-video-frame video{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:#000;border:1px solid #65471c;border-radius:2px}
.date-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.date-photo-grid figure{margin:0;min-width:0;border:1px solid var(--line)}
.date-photo-grid img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.date-photo-grid figcaption{padding:16px;color:var(--gold);font-size:1rem}
@media(max-width:600px){.home-moments .moment-photos,.date-photo-grid{grid-template-columns:minmax(0,1fr)}.gold-video-frame{padding:6px}}
@media(prefers-reduced-motion:reduce){.carousel-stage{animation:none;display:flex;gap:16px;overflow-x:auto;width:100%;height:auto;transform:none;padding:10px 0 18px}.moments-carousel{height:auto;display:block;perspective:none}.carousel-card{position:relative;flex:0 0 230px;transform:none;backface-visibility:visible}.carousel-card img{height:330px}}

/* Spacing, original button colors, brighter photography, and the About video cover. */
.section-pad{padding-top:142px;padding-bottom:142px}
main>section+section{margin-top:52px}
main>.hero+section,main>.page-intro+section,main>.date-page-intro+section{margin-top:0}
.metal.teal{--shadow:#003d3b;border-color:#4aafa6;background:linear-gradient(110deg,#004e4b 0%,#137e76 25%,#22988c 43%,#005850 58%,#086961 78%,#24988c 100%);color:#fff;box-shadow:inset 0 2px 2px #a5f4e66b,inset 0 -3px 5px #001a1999,0 4px 0 var(--shadow),0 8px 18px #0004}
.metal.teal:hover{box-shadow:inset 0 2px 2px #fff8,inset 0 -2px 5px #0005,0 5px 0 var(--shadow),0 12px 28px #0007}
.hero-photo{object-position:25% 18%}
.hero-shade{background:linear-gradient(90deg,#00141200 4%,#00131018 34%,#02100f67 54%,#020c0cdb 86%),linear-gradient(0deg,#00100d58 0%,transparent 34%)}
.page-intro .page-hero-photo{object-position:center 23%}
.page-intro:after{background:linear-gradient(90deg,#00130fb8 0%,#01221a96 44%,#01221a4d 100%)}
.date-page-intro .date-hero-photo{object-position:center 24%}
.date-page-intro:after{background:linear-gradient(90deg,#00130fb8 0%,#01221a96 48%,#01221a48 100%)}
.contact-hero-photo{object-position:center 28%;opacity:.62}
.contact:after{background:linear-gradient(90deg,#00130fb8,#01221a9e 58%,#01221a70)}
.video-stage{position:relative;aspect-ratio:1;overflow:hidden;background:#020b08}
.video-stage video{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;background:#000}
.about-video-cover{position:absolute;inset:0;z-index:2;width:100%;height:100%;padding:0;border:0;border-radius:0;background:#031311;overflow:hidden;transition:opacity .35s,visibility .35s;isolation:isolate}
.about-video-cover img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 24%;filter:brightness(.8) saturate(.9)}
.about-video-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#00100c20 0%,#00100c28 43%,#00100cc7 100%);z-index:-0}
.video-cover-content{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:#fff9e8;text-align:center;text-shadow:0 2px 12px #000;z-index:1}
.video-cover-kicker{font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;color:#f3d797}
.video-cover-play{display:grid;place-items:center;width:78px;height:78px;border:1px solid #fff1c1;border-radius:50%;background:linear-gradient(145deg,#e7cf8a,#a87b2c);color:#102725;font-size:1.7rem;padding-left:5px;box-shadow:0 0 0 7px #f7e4aa26,0 10px 25px #0008}
.video-cover-label{font-family:var(--serif);font-size:2rem;color:#fff0c0}
.about-video-cover.is-hidden{opacity:0;visibility:hidden;pointer-events:none}
.moments-carousel-section{margin-top:32px}
@media(max-width:760px){.section-pad{padding-top:90px;padding-bottom:90px}.hero-photo{object-position:23% 14%}.hero-shade{background:linear-gradient(0deg,#020c0cc8 8%,#020c0c54 47%,#020c0c16 100%),linear-gradient(90deg,#00120c08,#00130c18)}.page-intro:after,.date-page-intro:after{background:linear-gradient(180deg,#00130f98 0%,#01221ab2 100%)}.page-intro .page-hero-photo,.date-page-intro .date-hero-photo{object-position:center 18%}.contact:after{background:linear-gradient(180deg,#00130fa0,#01221ab2)}.contact-hero-photo{object-position:center 22%;opacity:.68}.video-cover-label{font-size:1.7rem}}

.date-teaser-layout{display:grid;grid-template-columns:1.02fr .98fr;gap:6%;align-items:center}
.date-teaser-photo{position:relative;aspect-ratio:auto;overflow:hidden;border:1px solid var(--line);border-radius:6px;background:#032b25}
.date-teaser-photo img{display:block;width:100%;height:auto;object-fit:contain;object-position:center;position:relative}
.date-teaser-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#010e0ed9 0%,transparent 54%)}
.date-photo-caption{position:absolute;left:28px;bottom:24px;z-index:1;font-family:var(--serif);font-size:2.2rem;color:#f0d89e;font-style:italic}
.date-teaser-content{display:flex;flex-direction:column;justify-content:center}
.date-teaser-content>p:not(.eyebrow){color:var(--muted);margin-bottom:25px;font-size:1rem}
.date-teaser-content>.metal{align-self:flex-start}
.date-teaser-content .date-teaser-list{margin-top:26px}
.promise-section{background:linear-gradient(135deg,#061815,#02110f 76%)}
.promise-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.promise-card{display:flex;flex-direction:column;min-height:100%;overflow:hidden;border:1px solid var(--line);border-radius:6px;background:linear-gradient(160deg,#0a2a24,#041512 72%);transition:transform .35s,border-color .35s,box-shadow .35s}
.promise-card:hover{transform:translateY(-7px);border-color:var(--gold);box-shadow:0 16px 30px #0005}
.promise-card-media{aspect-ratio:1.4;overflow:hidden;background:#09251e}
.promise-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}
.promise-card:hover .promise-card-media img{transform:scale(1.06)}
.promise-card-body{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:27px 25px 30px}
.promise-card h3{font-size:2.25rem;color:#e8d4a4;margin-bottom:15px}
.promise-card p{color:var(--muted);font-size:1rem;margin-bottom:24px}
.promise-card .metal{margin-top:auto;font-size:.875rem}
.about-support-section{background:linear-gradient(135deg,#061815,#02110f 76%)}
.about-support-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}
.about-support-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:6px;background:linear-gradient(160deg,#0a2a24,#041512 72%);transition:transform .35s,border-color .35s,box-shadow .35s}
.about-support-card:hover{transform:translateY(-7px);border-color:var(--gold);box-shadow:0 16px 30px #0005}
.about-support-media{aspect-ratio:1.6;overflow:hidden;background:#09251e}
.about-support-media img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}
.about-support-card:hover .about-support-media img{transform:scale(1.05)}
.about-support-body{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:27px 27px 30px}
.about-support-body h3{font-size:2.25rem;color:#e8d4a4;margin:15px 0}
.about-support-body>p:not(.eyebrow){color:var(--muted);font-size:1rem;margin-bottom:24px}
.about-support-body .metal{margin-top:auto;font-size:.875rem}
.story{grid-template-columns:1.12fr .88fr}
.story-copy h2{font-size:clamp(2.25rem,3.15vw,3.65rem)}
.story-visual{min-height:460px}
@media(max-width:960px){.date-teaser-layout{grid-template-columns:1fr 1fr;gap:4%}.promise-cards{gap:15px}.promise-card-body{padding:23px 19px 25px}.promise-card h3{font-size:1.9rem}.about-support-grid{gap:18px}.about-support-body{padding:23px 20px 25px}.about-support-body h3{font-size:1.95rem}}
@media(max-width:760px){main>section+section{margin-top:34px}.section-pad{padding-top:102px;padding-bottom:102px}.about-support-grid{grid-template-columns:1fr;gap:20px}.about-support-body h3{font-size:2.25rem}.story{grid-template-columns:1fr}.story-visual{min-height:0}}
@media(max-width:640px){.date-teaser-layout{grid-template-columns:1fr;gap:32px}.date-teaser-photo{aspect-ratio:auto}.date-photo-caption{left:20px;bottom:18px;font-size:1.9rem}.promise-cards{grid-template-columns:1fr;gap:17px}.promise-card-media{aspect-ratio:1.6}.promise-card-body{padding:24px 22px 27px}.promise-card h3{font-size:2.25rem}}

/* Keep every hero portrait and couple fully visible on phones. */
@media(max-width:760px){
  .page-intro,.date-page-intro{
    display:block;
    min-height:0;
    padding:calc(62.5vw + 42px) 0 54px;
    background:#031b15;
  }
  .page-intro .page-hero-photo,.date-page-intro .date-hero-photo{
    inset:0 auto auto 0;
    width:100%;
    height:auto;
    aspect-ratio:8/5;
    object-fit:contain;
    object-position:center top;
    filter:saturate(.94) contrast(1.02);
  }
  .page-intro:after,.date-page-intro:after{
    background:linear-gradient(180deg,#00130f00 0%,#00130f08 62%,#00130fd8 78%,#01221af5 100%);
  }
  .page-intro .floating-rings,.date-page-intro .floating-rings{top:62.5vw}
  .contact{
    padding-top:calc(62.5vw + 62px);
    padding-bottom:102px;
    background:#031b15;
  }
  .contact-hero-photo{
    inset:0 auto auto 0;
    width:100%;
    height:auto;
    aspect-ratio:8/5;
    object-fit:contain;
    object-position:center top;
    opacity:.9;
    filter:saturate(.94) contrast(1.02);
  }
  .contact:after{
    background:linear-gradient(180deg,#00130f00 0%,#00130f08 61%,#00130fd8 78%,#01221af5 100%);
  }
  .contact .floating-rings{top:62.5vw}
  .video-stage{aspect-ratio:2/3}
  .video-stage video{object-fit:contain}
  .about-video-cover img{
    object-fit:contain;
    object-position:center;
    background:#000;
    filter:brightness(.9) saturate(.96);
  }
  .about-video-cover:after{background:linear-gradient(180deg,#00100c08 0%,#00100c18 55%,#00100ca8 100%)}
}
@media(max-width:640px){
  .hero{padding-top:56.28vw}
  .hero-photo{
    inset:0 auto auto 0;
    width:100%;
    height:auto;
    aspect-ratio:1672/941;
    object-fit:contain;
    object-position:center top;
  }
  .hero-shade{background:linear-gradient(180deg,#020c0c00 0%,#020c0c0a 52%,#020c0cb0 78%,#020c0c 91%,#020c0c 100%)}
  .hero-side-note{display:none}
}

/* Reliable touch navigation for phones and tablets. */
@media(max-width:1100px){
  body.mobile-menu-open{overflow:hidden}
  .menu-toggle{
    position:relative;
    z-index:102;
    touch-action:manipulation;
  }
  .site-header nav#main-nav{
    display:flex;
    visibility:hidden;
    opacity:0;
    pointer-events:none;
    z-index:101;
    max-height:0;
    overflow:hidden;
    transform:translateY(-12px);
    transition:opacity .22s ease,transform .22s ease,visibility .22s ease,max-height .28s ease;
  }
  .site-header nav#main-nav.open{
    visibility:visible;
    opacity:1;
    pointer-events:auto;
    max-height:calc(100dvh - 87px);
    overflow-y:auto;
    overscroll-behavior:contain;
    transform:translateY(0);
  }
  .site-header nav#main-nav a{flex:0 0 auto}
.site-header.menu-open{box-shadow:0 12px 34px #0009}
}

/* Native mobile navigation: remains usable even when scripts are delayed. */
.mobile-navigation{display:none}
.mobile-navigation summary{list-style:none}
.mobile-navigation summary::-webkit-details-marker{display:none}
.mobile-menu-icon-close{display:none}

@media(max-width:1100px){
  body:has(.mobile-navigation[open]),
  body.mobile-menu-open{overflow:hidden}
  .site-header nav#main-nav{display:none!important}
  .mobile-navigation{
    display:block;
    order:3;
    position:relative;
    z-index:104;
  }
  .mobile-menu-summary{
    min-height:40px;
    padding:8px 17px;
    gap:9px;
    font-size:.875rem;
    touch-action:manipulation;
    user-select:none;
  }
  .mobile-menu-summary>span:first-child{font-size:inherit}
  .mobile-navigation[open] .mobile-menu-icon-open{display:none}
  .mobile-navigation[open] .mobile-menu-icon-close{display:inline}
  .site-header .mobile-navigation nav.mobile-nav-links{
    display:none!important;
    position:fixed;
    top:87px;
    left:0;
    right:0;
    z-index:103;
    padding:18px 6% 28px;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    max-height:calc(100dvh - 87px);
    overflow-y:auto;
    overscroll-behavior:contain;
    background:#001b19;
    border-bottom:1px solid var(--gold);
    box-shadow:0 20px 30px #0008;
  }
  .site-header .mobile-navigation[open] nav.mobile-nav-links{display:flex!important}
  .site-header .mobile-navigation nav.mobile-nav-links a{
    flex:0 0 auto;
    padding:14px 20px;
    font-size:1rem;
  }
  .site-header .mobile-navigation nav.mobile-nav-links a::after{display:none}
}

@media(max-width:540px){
  .mobile-menu-summary{
    min-height:40px;
    padding:8px 12px;
    font-size:.75rem;
  }
}

/* Homepage headline typing effect. */
.typing-hero{min-height:2.08em}
.typing-line-one{color:#e0bc70!important}
.typing-line-two{color:#f0d797!important}
.typing-cursor{
  display:none;
  width:.075em;
  height:.82em;
  margin-left:.09em;
  vertical-align:-.04em;
  background:#f8e4a5;
  box-shadow:0 0 12px #e5c06f99;
  animation:typingCursorBlink .72s steps(1,end) infinite;
}
.typing-hero.is-typing .typing-cursor,
.typing-hero.is-complete .typing-cursor{display:inline-block}
.typing-hero.is-complete .typing-cursor{animation:typingCursorFinish .85s ease forwards}
@keyframes typingCursorBlink{50%{opacity:0}}
@keyframes typingCursorFinish{0%,65%{opacity:1}100%{opacity:0}}
@media(prefers-reduced-motion:reduce){.typing-cursor{display:none!important}}


/* Supplied rooftop photo behind the About page heading. */
.about-photo-hero{position:relative;isolation:isolate;overflow:hidden;min-height:clamp(470px,41.66vw,700px);display:flex;align-items:center;padding:80px 0;background:#021b17}
.about-background-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}
.about-photo-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,19,15,.94) 0%,rgba(0,19,15,.8) 32%,rgba(0,19,15,.18) 67%,rgba(0,19,15,.04) 100%);z-index:-1;pointer-events:none}
.about-photo-hero .container{position:relative}
.about-photo-hero h1{max-width:650px;font-size:clamp(3rem,5.8vw,5.6rem);line-height:1.04;margin:16px 0 0;text-shadow:0 2px 24px #00130f80}
@media(max-width:760px){
 .about-photo-hero{display:block;min-height:0;padding:41.66vw 0 42px}
 .about-background-photo{height:41.66vw;object-fit:contain;object-position:center top}
 .about-photo-hero:after{background:none}
 .about-photo-hero .container{padding-top:32px;text-align:center}
 .about-photo-hero h1{font-size:clamp(2.75rem,10vw,3.6rem)}
}

/* Latest DINAO Sites presentation and supplied images. */

.motion-ready .reveal-up{opacity:0;transform:translate3d(0,42px,0) scale(.985);transition:opacity .8s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms),transform .8s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms)}
.motion-ready .reveal-up.is-visible{opacity:1;transform:translate3d(0,0,0) scale(1)}
.page-hero-photo,.date-hero-photo,.contact-hero-photo{transform:translate3d(0,var(--hero-shift,0),0) scale(1.045);will-change:transform}
.gold-text{background-size:220% auto;animation:gold-letter-glow 6s linear infinite}
.brand img,.footer-brand img,.hero-logo,.contact-brand img{animation:logo-breathe 5.5s ease-in-out infinite;transform-origin:center}
.promise-card,.service-card,.about-support-card,.game-card,.contact-cards article{transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}
.promise-card:hover,.service-card:hover,.about-support-card:hover,.game-card:hover,.contact-cards article:hover{transform:translateY(-8px);box-shadow:0 24px 55px rgba(0,0,0,.28);border-color:rgba(224,189,111,.55)}
.date-night-photos{position:relative;overflow:hidden;background:radial-gradient(circle at 18% 14%,rgba(12,157,157,.17),transparent 34%),linear-gradient(135deg,#031f20,#001313)}
.date-night-photos:before{content:"";position:absolute;inset:-20%;background:conic-gradient(from 20deg,transparent,rgba(224,189,111,.07),transparent 33%);animation:film-ambient-spin 18s linear infinite;pointer-events:none}
.date-night-photos .container{position:relative;z-index:1}
.date-night-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,4vw,58px);align-items:stretch}
.date-night-photo-card{margin:0;border:1px solid rgba(224,189,111,.3);border-radius:26px;overflow:hidden;background:linear-gradient(145deg,rgba(0,68,67,.94),rgba(0,25,25,.98));box-shadow:0 24px 70px rgba(0,0,0,.35)}
.date-photo-frame{position:relative;overflow:hidden;background:#031f20}
.date-photo-frame:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.12);border-radius:inherit;pointer-events:none}
.date-photo-frame img{display:block;width:100%;height:auto}
.date-night-photo-card figcaption{padding:clamp(22px,3vw,34px)}
.date-night-photo-card h3{margin:0 0 10px;color:#fff;font-size:clamp(1.55rem,2.4vw,2.2rem)}
.date-night-photo-card p{margin:0;color:rgba(255,255,255,.76)}
@keyframes logo-breathe{0%,100%{filter:drop-shadow(0 0 0 rgba(0,206,209,0));transform:scale(1)}50%{filter:drop-shadow(0 0 12px rgba(0,206,209,.28));transform:scale(1.018)}}
@keyframes gold-letter-glow{0%{background-position:0 50%}100%{background-position:220% 50%}}
@keyframes film-ambient-spin{to{transform:rotate(360deg)}}
@media(max-width:780px){.date-night-photo-grid{grid-template-columns:1fr}.date-night-photo-card{border-radius:20px}.motion-ready .reveal-up{transform:translate3d(0,26px,0)}}
@media(prefers-reduced-motion:reduce){.brand img,.footer-brand img,.hero-logo,.contact-brand img,.gold-text,.date-night-photos:before{animation:none!important}.page-hero-photo,.date-hero-photo,.contact-hero-photo{transform:none!important}.reveal-up{opacity:1!important;transform:none!important;transition:none!important}}

.three-strand-figure{border:0;background:transparent;box-shadow:none}
.three-strand-figure img{mix-blend-mode:normal}
.three-strand-figure figcaption{color:var(--gold);background:transparent}
@media(max-width:540px){.service-grid{grid-template-columns:minmax(0,1fr)}.service-card{min-width:0}.service-card h3 br{display:initial}}
/* Marriage Support: the supplied sunset photo is the hero. */
.marriage-support-hero{min-height:clamp(520px,43vw,720px);padding:80px 0}
.marriage-support-hero .page-hero-photo{object-position:center top;filter:none}
.marriage-support-hero:after{background:linear-gradient(90deg,rgba(0,19,15,.03) 0%,rgba(0,19,15,.12) 38%,rgba(0,19,15,.86) 65%,rgba(0,19,15,.94) 100%)}
.marriage-support-hero .container{padding-left:52%;text-align:left}
.marriage-support-hero h1{font-size:clamp(3rem,5.2vw,5rem)}
@media(max-width:760px){
 .marriage-support-hero{display:block;min-height:0;padding:56.28vw 0 42px}
 .marriage-support-hero .page-hero-photo{inset:0 auto auto 0;width:100%;height:56.28vw;object-fit:contain;object-position:center top;transform:none;will-change:auto}
 .marriage-support-hero:after{background:none}
 .marriage-support-hero .container{padding:36px 0 0;text-align:center}
 .marriage-support-hero .floating-rings{top:56.28vw}
 .marriage-support-hero h1{font-size:clamp(2.7rem,10vw,3.6rem)}
}

