@charset "UTF-8";
:root{--ink:#073e50;--deep:#052f40;--teal:#007e92;--aqua:#b9f0e9;--paper:#fcfbf5;--sun:#ffce63;--coral:#e95d3c;--line:#d9e4df;--muted:#526f77;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--coral);outline-offset:4px}button{color:inherit}h1,h2,h3,p{margin:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400}p{line-height:1.6}h3{font-size:21px;letter-spacing:-.4px}em{font-weight:400}img{max-width:100%}[hidden]{display:none!important}
body:not(.setup-page){height:100dvh;display:flex;flex-direction:column;overflow:hidden}.site-header{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:100px;padding:22px 3.4%;flex:none;background:var(--paper)}.wordmark{display:flex;align-items:center;gap:12px;white-space:nowrap;font-family:Georgia,serif;font-size:35px;letter-spacing:-1.7px}.brand-wave{font:50px/1 Georgia;color:var(--teal);transform:rotate(-12deg)}.brand-caption{display:block;font:10px/1 Arial;letter-spacing:2.6px;margin-top:5px}.main-nav{display:flex;gap:36px}.main-nav button,.quiet-button{border:0;background:none;padding:12px 0;font-size:14px;font-weight:600}.main-nav button{position:relative}.main-nav button:after{content:'';height:2px;background:var(--coral);position:absolute;bottom:3px;left:0;right:100%;transition:right .2s}.main-nav button:hover:after{right:0}.header-tools{display:flex;align-items:center;gap:25px}.quiet-button{font-weight:400;display:flex;align-items:center;gap:8px}.quiet-button>span:first-child{font-size:24px;line-height:1}.private-label{border-left:1px solid var(--line);padding-left:23px;font-size:12px;white-space:nowrap;display:flex;align-items:center;gap:7px}.private-label span{font-size:23px}
#home{flex:1;min-height:0;display:flex;flex-direction:column}.beach-world{min-height:0;flex:1;padding:0 15px;display:flex}.scene-shell{flex:1;min-width:0;min-height:0;position:relative;display:grid;place-items:center;overflow:hidden;border-radius:10px;background:#5abbd3}.beach-stage{position:relative;flex:none;aspect-ratio:1672/941;container-type:inline-size;overflow:hidden}.beach-image{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block}.scene-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#05364555,transparent 23%)}.scene-title{position:absolute;left:35%;top:5%;width:36%;pointer-events:none}.scene-kicker{display:block;font-size:clamp(8px,.75cqw,12px);letter-spacing:.2em;line-height:1.5;margin-bottom:10px;font-weight:700}.scene-title h1{font-size:5cqw;line-height:.98;letter-spacing:-.045em;text-shadow:0 1px 1px #b9e8ff66}.scene-title h1 span{color:#fff9d1}.beach-spot{position:absolute;z-index:2;top:46%;transform:translate(-50%,-50%);border:1px solid #fffef28f;border-radius:8px;box-shadow:0 5px 0 #06384830,0 12px 30px #03384735;display:flex;align-items:center;gap:13px;padding:12px 16px;background:#fffdf2;color:var(--ink);text-align:left;transition:background .2s,box-shadow .2s}.gallery-spot{left:21.5%}.messages-spot{left:78%}.beach-spot:before{content:'';position:absolute;bottom:100%;left:50%;height:25px;width:1px;background:#fffdf2}.beach-spot:after{content:'';position:absolute;bottom:calc(100% + 23px);left:calc(50% - 4px);width:9px;height:9px;border-radius:50%;background:#fffdf2;box-shadow:0 0 0 6px #fffdf23c}.beach-spot small{display:block;font-size:8px;letter-spacing:1.4px;margin-bottom:4px}.beach-spot strong{display:block;font-size:19px;white-space:nowrap}.spot-number{font-family:Georgia,serif;font-style:italic;font-size:26px;color:#0d8490}.spot-arrow{font-size:22px;margin-left:8px}.beach-spot:hover{background:var(--sun);box-shadow:0 7px 0 #06384830,0 17px 35px #03384744}.shore-caption{position:absolute;bottom:5%;left:3.5%;display:flex;align-items:center;gap:12px;font-size:clamp(10px,1.05cqw,16px);color:white;text-shadow:0 2px 5px #064553;font-weight:500}.tiny-sun{font-size:36px;color:var(--sun)}.scene-coordinate{position:absolute;right:3%;bottom:6%;font-size:clamp(8px,.8cqw,12px);letter-spacing:.15em;color:#fff;writing-mode:horizontal-tb;text-shadow:0 1px 5px #053849}.scene-loading{position:absolute;inset:0;display:grid;place-items:center;color:var(--ink);background:#b9e7ed;font:26px Georgia;z-index:3}

.beach-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;flex:none;padding:23px 3.4% 17px}.beach-bottom>p{font-family:Georgia,serif;font-style:italic;font-size:20px}.bottom-destinations{display:flex;gap:18px}.bottom-destinations button{background:none;border:0;display:flex;align-items:center;gap:14px;font-size:14px;min-height:42px;padding:0 18px}.bottom-destinations button+button{border-left:1px solid var(--line)}.bottom-destinations span{font:italic 20px Georgia;color:var(--teal)}.bottom-destinations i{font-style:normal;font-size:20px}.domain-label{font-size:11px;letter-spacing:1px;color:var(--muted)}.site-footer{flex:none;padding:7px 3.4% 12px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);min-height:41px}.site-footer>span{font-size:10px;letter-spacing:.04em;color:var(--muted)}.site-footer>div{display:flex;gap:18px;margin-left:auto}.text-button{padding:7px 0;min-height:34px;border:0;background:none;font-size:13px;text-decoration:underline;text-underline-offset:4px;line-height:1.45}.site-footer .text-button{font-size:11px;min-height:28px;max-width:220px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}
dialog{padding:0;color:var(--ink);background:var(--paper);border:1px solid #fff9;box-shadow:0 30px 100px #00304040;border-radius:14px;max-height:calc(100dvh - 32px);overflow:auto}dialog::backdrop{background:#0637478c;backdrop-filter:blur(6px)}.small-dialog{width:min(480px,calc(100vw - 28px));padding:42px}.small-dialog h2{font-size:42px;line-height:1.05;letter-spacing:-1.6px;margin:12px 0 20px}.small-dialog p{font-size:14px}.small-dialog form{margin-top:22px}.dialog-close{position:absolute;right:14px;top:10px;width:40px;height:40px;border:0;background:none;font-size:29px;font-weight:300}.content-dialog{width:min(1400px,calc(100vw - 40px));height:calc(100dvh - 48px);max-width:none;max-height:none}.panel-header{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 32px;border-bottom:1px solid var(--line);background:#fcfbf5f5;backdrop-filter:blur(10px)}.back-button{border:1px solid #bccfc9;border-radius:50px;background:none;min-height:40px;padding:9px 17px;font-size:12px}.panel-tabs{display:flex;gap:25px}.panel-tabs button{border:0;background:none;padding:8px;font-size:13px}.panel-wordmark{font:25px Georgia;letter-spacing:-1px}.content-dialog>section{padding:37px 42px 50px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:35px}.eyebrow{font-size:10px!important;letter-spacing:.17em;font-weight:700;text-transform:uppercase;color:var(--teal)}.section-heading h2{font-size:clamp(34px,4.5vw,62px);line-height:1.06;letter-spacing:-2px;margin-top:12px}.section-heading h2 em{color:var(--teal)}.section-heading>p,.section-heading>div>p:not(.eyebrow){font-size:14px;color:var(--muted)}.section-heading .button{margin-top:15px}.button{border:1px solid var(--ink);border-radius:6px;background:var(--ink);color:white;min-height:44px;padding:12px 18px;display:inline-flex;align-items:center;justify-content:center;gap:15px;font-size:14px;line-height:1.4;font-weight:600;transition:background .2s}.button:hover{background:#006879;border-color:#006879}.button.secondary{background:transparent;color:var(--ink);border-color:#bdcdc8}.button.secondary:hover{background:var(--aqua)}label{display:block;font-size:13px;font-weight:600;margin-bottom:18px}input,textarea{width:100%;min-width:0;display:block;border:1px solid #bdcdc8;border-radius:5px;background:#fffef9;color:var(--ink);padding:12px;font-size:16px;line-height:1.45;margin-top:8px}textarea{resize:vertical;min-height:100px}input[type=file]{font-size:12px;padding:12px 8px}form .button{width:100%}.form-help{font-size:12px!important;line-height:1.6;color:var(--muted);margin:12px 0 17px}.form-error{font-size:13px!important;color:#a63225;line-height:1.5;margin-top:12px}.form-error:empty,.message-reply-sent:empty{display:none}.parent-notice{background:#fce3a1;border:1px solid #edcc75;border-radius:5px;padding:13px 17px;font-size:13px;margin-bottom:24px}.identity-options{display:grid;gap:10px;margin-top:25px}.identity-options .button{justify-content:flex-start;white-space:normal}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100% - 32px);border-radius:8px;background:var(--deep);color:#fff;padding:14px 22px;font-size:14px;line-height:1.5;z-index:100;box-shadow:0 9px 25px #052f4030}
.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.project-card{display:block;border:0;padding:0;text-align:left;background:transparent}.card-image{aspect-ratio:4/3;position:relative;overflow:hidden;border-radius:7px;background:#b5e0df}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.project-card:hover img{transform:scale(1.035)}.card-label{position:absolute;left:13px;top:13px;font-size:8px;letter-spacing:1.4px;background:#fffcef;border-radius:4px;padding:7px 10px;font-weight:bold}.card-copy{padding:17px 0;border-bottom:1px solid #cad8d1}.card-copy h3{font-family:Georgia,serif;font-weight:400;font-size:24px;line-height:1.15;margin-bottom:11px}.card-copy p{font-size:12px;color:var(--muted)}.card-meta{display:flex;justify-content:space-between;align-items:center}.gallery-empty{grid-column:1/-1;padding:55px 30px;text-align:center;border:1px dashed #aabfb7;border-radius:9px;background:#eff6ef}.gallery-empty h3{font:30px Georgia;margin-bottom:15px}.gallery-empty p{color:var(--muted);font-size:15px}.gallery-note{display:flex;flex-direction:column;justify-content:center;min-height:250px;padding:30px;background:#e6f2ec;border-radius:7px}.gallery-note .note-sun{font:56px Georgia;color:var(--coral);margin-bottom:20px}.gallery-note h3{font:30px Georgia;line-height:1.12;margin-bottom:14px}.gallery-note p{font-size:13px;color:var(--muted)}.photo-dialog{width:min(1000px,calc(100vw - 24px));padding:42px}.photo-dialog h2{font:42px/1.1 Georgia;letter-spacing:-1px;margin:10px 0 15px}.detail-images{display:grid;gap:14px;margin:25px 0}.detail-images img{width:100%;max-height:68vh;object-fit:contain;border-radius:5px;background:#eff2ec}.detail-description{font-size:16px;white-space:pre-wrap;overflow-wrap:anywhere;margin-bottom:30px}.detail-meta{font-size:12px;color:var(--muted)}.comment{padding:18px 0;border-bottom:1px solid var(--line);font-size:14px}.comment small{display:block;margin:6px 0 10px;font-size:11px;color:var(--muted)}.comment p{white-space:pre-wrap;overflow-wrap:anywhere}.comment-form{margin-top:25px}.comment-form .button{width:auto}.photo-dialog .detail-tools{margin-top:20px}.empty-note{font-size:14px;color:var(--muted);margin:15px 0}
.kindness-layout{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1.3fr);gap:40px;align-items:start}.kindness-compose{position:relative;background:#f9dfa1;padding:31px;border:1px solid #efd080;border-radius:5px;box-shadow:4px 5px 0 #eedfa8}.kindness-compose h3{font:40px Georgia;letter-spacing:-1.3px;margin:12px 0}.kindness-compose>p:not(.eyebrow){font-size:14px;max-width:85%;margin-bottom:18px}.note-stamp{position:absolute;right:22px;top:18px;font-size:50px;color:#da632f;transform:rotate(9deg)}.kindness-compose input,.kindness-compose textarea{background:#fffdf3;border-color:#d7bc7d}.kindness-compose label{margin-bottom:8px}.preview-tools{padding:12px;border:1px dashed #bcad7a;margin:20px 0;font-size:11px}.preview-tools p{font-size:11px}.preview-tools .text-button{font-size:11px}.kindness-starters{display:flex;gap:7px;flex-wrap:wrap;margin:20px 0}.kindness-starters button{border:1px solid #b5a26f;background:none;border-radius:50px;padding:8px 11px;font-size:11px;min-height:34px}.kindness-starters button:hover{background:#fff3d1}.board-heading{display:flex;align-items:center;justify-content:space-between;padding:4px 0 17px;border-bottom:1px solid #adc8c5}.board-heading h3{font:28px Georgia}.board-heading>span{font:36px Georgia;color:var(--teal)}.message-thread{padding:25px 0;border-bottom:1px solid #cbd9d4}.message-author{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.message-author strong{font-size:14px}.message-author small{font-size:10px;white-space:nowrap;color:var(--muted)}.message-post>p{font-size:15px;line-height:1.65;margin-top:12px;white-space:pre-wrap;overflow-wrap:anywhere}.message-replies{margin:18px 0 0 18px;border-left:2px solid #a7d8d2;padding-left:19px}.message-reply{padding:14px 0}.message-thread-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:15px}.message-thread-actions>span{font-size:11px;color:var(--muted)}.message-thread-actions>.button{padding:6px 13px;min-height:34px;font-size:11px}.message-reply-form{margin:18px 0 4px;background:#ebf4ed;padding:20px;border-radius:5px}.message-reply-form .button{width:auto}.message-reply-sent{font-size:12px;line-height:1.5;color:#14674e;margin-top:14px}.message-remove{color:#966045;font-size:11px}.board-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px 25px;padding-top:15px}.board-actions .text-button{font-size:11px}.kindness-empty{padding:40px 10px;text-align:center}.kindness-empty>span{font-size:40px;color:var(--teal)}.kindness-empty h3{font:27px Georgia;margin:15px 0}.kindness-empty p{font-size:14px;color:var(--muted)}
.admin-actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:25px}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.panel{background:#fff;border:1px solid var(--line);border-radius:6px;padding:28px}.panel>h3{font:29px Georgia;margin-bottom:17px}.panel>p{font-size:14px;color:var(--muted)}.member{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 0;border-bottom:1px solid var(--line)}.member strong{font-size:14px}.member small{display:block;color:var(--muted);font-size:11px;margin-top:5px}.member .text-button{font-size:11px}.approval{padding:20px 0;border-bottom:1px solid var(--line);font-size:14px}.approval small{display:block;font-size:11px;color:var(--muted);margin:6px 0}.approval p{margin:12px 0;white-space:pre-wrap}.approval>div{display:flex;gap:10px}.approval .button{font-size:12px;padding:8px 12px;min-height:36px}.setup-shell{max-width:1000px;padding:50px 20px;margin:auto}.setup-shell h1{font:56px Georgia;margin:20px 0}.setup-shell p{max-width:65ch;margin-bottom:20px}.setup-card{margin-top:30px}.setup-form{max-width:460px}
@media(min-width:1400px){.site-header{min-height:105px}.beach-bottom{padding-block:27px 20px}.scene-title h1{font-size:4.8cqw}}
@media(max-width:1000px){.site-header{min-height:85px;padding:18px 25px;gap:20px}.wordmark{font-size:29px}.main-nav{gap:23px}.header-tools{gap:10px}.private-label{display:none}.beach-bottom{padding:17px 25px}.beach-bottom>p{font-size:18px}.domain-label{display:none}.site-footer{padding-inline:25px}.beach-spot{gap:8px;padding:9px 12px}.beach-spot strong{font-size:15px}.beach-spot small{font-size:7px}.spot-arrow{font-size:19px;margin-left:1px}.spot-number{font-size:23px}.content-dialog>section{padding:30px}.kindness-layout{gap:25px;grid-template-columns:minmax(260px,.85fr) minmax(0,1fr)}.kindness-compose{padding:24px}.message-author{flex-wrap:wrap;gap:5px}.project-grid{gap:20px;grid-template-columns:repeat(2,minmax(0,1fr))}.panel-wordmark{display:none}}
@media(max-width:650px){.site-header{min-height:80px;padding:16px 18px;flex-wrap:wrap;gap:12px}.wordmark{font-size:28px;gap:8px}.brand-wave{font-size:42px}.brand-caption{font-size:8px;letter-spacing:2px}.main-nav{display:none}.quiet-button{font-size:12px;gap:5px}.beach-world{padding:0 8px}.scene-shell{border-radius:7px;background:linear-gradient(#79ceeb,#69cce1)}.scene-title{display:none}.beach-stage{overflow:visible}.beach-spot{padding:9px;gap:6px;top:46%;border-radius:5px}.beach-spot strong{font-size:11px}.beach-spot small,.spot-arrow{display:none}.spot-number{font-size:16px}.beach-spot:before{height:12px}.beach-spot:after{bottom:calc(100% + 10px);width:5px;height:5px;left:calc(50% - 2px);box-shadow:0 0 0 3px #fff7}.shore-caption{font-size:8px;gap:5px;bottom:3%;left:3%}.tiny-sun{font-size:23px}.scene-coordinate{display:none}.beach-bottom{padding:17px 18px 12px;flex-direction:column;gap:10px;align-items:stretch}.beach-bottom>p{font-size:21px;text-align:center}.bottom-destinations{display:grid;grid-template-columns:1fr 1fr;gap:8px}.bottom-destinations button{justify-content:space-between;padding:11px 13px;border:1px solid #bbceca!important;border-radius:6px;font-size:12px;gap:8px;min-height:48px}.bottom-destinations span{font-size:17px}.bottom-destinations i{font-size:15px}.site-footer{flex-wrap:wrap;justify-content:center;gap:0;padding:5px 15px 10px}.site-footer>span{font-size:8px;text-align:center;flex:0 0 100%;line-height:1.5}.site-footer>div{margin:auto;gap:14px}.site-footer .text-button{font-size:9px;max-width:135px}.content-dialog{width:calc(100vw - 14px);height:calc(100dvh - 16px);border-radius:9px}.panel-header{padding:10px 13px;gap:8px}.back-button{font-size:10px;padding:7px 10px;min-height:35px}.panel-tabs{gap:4px}.panel-tabs button{font-size:10px;padding:7px 5px;min-height:35px}.content-dialog>section{padding:23px 19px 35px}.section-heading{align-items:start;flex-direction:column;gap:15px;margin-bottom:25px}.section-heading h2{font-size:39px;letter-spacing:-1.2px}.section-heading p{font-size:13px!important}.section-heading .eyebrow{font-size:9px!important}.kindness-layout{grid-template-columns:1fr;gap:35px}.kindness-compose{padding:24px}.kindness-compose>p:not(.eyebrow){font-size:14px}.project-grid{grid-template-columns:1fr;gap:23px}.gallery-note{min-height:180px}.card-copy h3{font-size:26px}.photo-dialog{padding:30px 20px}.photo-dialog h2{font-size:34px}.small-dialog{padding:35px 25px}.small-dialog h2{font-size:36px}.admin-grid{grid-template-columns:1fr}.panel{padding:22px}.admin-actions{gap:8px}.admin-actions .button{flex:1;min-width:125px;font-size:12px}.message-author small{white-space:normal}.message-replies{margin-left:5px;padding-left:12px}.toast{font-size:12px;padding:11px 15px}.scene-loading{font-size:21px}}
@media(max-height:550px) and (min-width:651px){.site-header{min-height:60px;padding-block:10px}.beach-bottom{padding-block:7px;gap:10px}.beach-bottom>p{font-size:16px}.site-footer{padding-block:3px;min-height:28px}.wordmark{font-size:24px}.brand-wave{font-size:34px}.beach-spot strong{font-size:12px}.beach-spot small{display:none}.beach-spot{padding:6px 9px}.scene-title h1{font-size:4cqw}.scene-kicker{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

@media(min-width:651px){.scene-title{top:max(5%,calc(var(--crop-y,0px) + 20px))}}
@media(max-width:650px){
 .scene-shell:before{content:'';position:absolute;inset:-35px;background:linear-gradient(#06536d45,#003e5599),url('beach-shore.png') center/cover;filter:blur(22px);pointer-events:none}
 .beach-stage{z-index:1}.beach-image{border-radius:5px}
 .scene-title{display:block;top:auto;bottom:calc(100% + 26px);left:7%;width:86%;text-align:center;color:#fffdf2}
 .scene-kicker{font-size:8px;letter-spacing:.16em;margin-bottom:12px}.scene-title h1{font-size:42px;text-shadow:none;letter-spacing:-1.6px}
 .shore-caption{top:calc(100% + 28px);bottom:auto;left:0;width:100%;justify-content:center;font:italic 14px Georgia;gap:8px}.tiny-sun{font:30px Georgia}
}
@media(max-width:650px) and (max-height:700px){.scene-title{bottom:calc(100% + 15px)}.scene-title h1{font-size:30px}.scene-kicker{display:none}.shore-caption{top:calc(100% + 16px);font-size:11px}.tiny-sun{font-size:23px}}
@media(max-width:650px) and (max-height:590px){.scene-title,.shore-caption{display:none}}

h2[tabindex='-1']:focus{outline:none}.family-list-heading{margin-top:24px}

.scene-shell{display:flex;align-items:center;justify-content:center}

/* Shore viewpoint: controls stay over the two buildings on the foreground sand. */
.beach-spot{top:min(80%,calc(100% - var(--crop-y,0px) - 42px))}.gallery-spot{left:12%}.messages-spot{left:88%}
@media(max-width:650px){.beach-spot{top:80%}.gallery-spot{left:19%}.messages-spot{left:79%}}

.scene-shell:before{content:'';position:absolute;inset:-35px;background:linear-gradient(#06536d45,#003e5599),url('beach-shore.png') center/cover;filter:blur(22px);pointer-events:none}

/* Real surf and its rider are one silent film behind the beach foreground. */
.surf-window{position:absolute;left:0;top:39%;width:100%;height:40%;overflow:hidden;isolation:isolate;pointer-events:none;mask-image:linear-gradient(to bottom,transparent,#000 1.2%,#000 94%,transparent);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 1.2%,#000 94%,transparent)}
.surf-window:after{content:'';position:absolute;inset:0 0 auto;height:24%;background:linear-gradient(#197eaf 0%,#197eafaa 38%,#197eaf00 100%);mix-blend-mode:color;pointer-events:none}
#surf-video{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 0%;pointer-events:none}
.beach-foreground{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none}
.beach-watcher{position:absolute;left:57%;bottom:max(1.5%,calc(var(--crop-y,0px) + .5%));height:clamp(85px,calc(34% - var(--crop-y,0px)),34%);width:auto;max-width:none;transform:translateX(-50%);object-fit:contain;pointer-events:none}

.gallery-actions,.photo-edit-tools,.gallery-confirm-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.gallery-actions{margin-top:18px}.gallery-actions .button{margin-top:0}.gallery-count{font-size:12px!important;color:var(--teal)!important;margin-top:7px}.gallery-editing .card-image{outline:2px solid var(--teal);outline-offset:3px}.gallery-editing .card-label{background:var(--ink);color:white}.gallery-photo{margin:0}.photo-edit-tools{padding:14px 0 8px}.photo-edit-tools .button{font-size:12px;min-height:40px;padding:9px 13px}.photo-edit-tools .danger-text{margin-left:auto}.danger-text{color:#a23d31}.button.danger{background:#9b3e35;border-color:#9b3e35}.button.danger:hover{background:#7f2e27}.photo-detail-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-right:20px}.photo-detail-heading .button{font-size:11px;min-height:36px;padding:8px 12px}.photo-story-form{padding:20px;margin:20px 0;border:1px solid var(--line);background:#eff5ee;border-radius:7px}.photo-story-form textarea{min-height:70px}.photo-story-form .button{width:auto}.gallery-confirm-actions{margin-top:24px}.gallery-confirm-actions .button{flex:1}.photo-story-form label{margin-bottom:13px}
@media(max-width:650px){.gallery-actions .button{font-size:12px;padding:10px 13px}.photo-edit-tools{gap:8px}.photo-edit-tools .danger-text{margin-left:0;flex-basis:100%;text-align:left}.photo-detail-heading{padding-right:20px;align-items:start}.photo-detail-heading .eyebrow{max-width:40%}.photo-story-form{padding:14px}}
