:root{--green:#284e3d;--deep:#193c2e;--sage:#e9eee7;--cream:#f7f5ef;--ink:#273b31;--muted:#69766d;--line:#dce3db;--gold:#b69b68}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:#fff;font-family:'Noto Sans', 'Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif;font-size:15px;line-height:1.9}a{color:inherit;text-decoration:none}button,select{font:inherit}button,a,select,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible{outline:3px solid #c79e53;outline-offset:4px}img{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:500}h1,h2{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;letter-spacing:.07em;line-height:1.65}h2{font-size:clamp(25px,3vw,40px)}h3{font-size:21px;line-height:1.6}p{margin-top:18px}.preview{background:var(--deep);color:white;text-align:center;font-size:10px;letter-spacing:.12em;padding:7px 15px}.preview span{margin-left:15px;letter-spacing:.03em;opacity:.8}header{height:104px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid var(--line);background:#fff;position:relative;z-index:4}.brand{display:flex;align-items:center;gap:16px}.brand img{width:65px;height:65px;object-fit:contain}.brand span{font-size:18px;letter-spacing:.1em}.brand small{display:block;font-size:9px;letter-spacing:.18em;color:var(--muted)}nav{display:flex;align-items:center;gap:28px;font-size:12px}.navcontact{padding:12px 20px;border:1px solid var(--green)}#menu{display:none}.hero{display:grid;grid-template-columns:41% 59%;background:var(--cream);min-height:620px}.herocopy{padding:68px 12% 48px}.eyebrow{font-family:Arial,sans-serif;font-size:10px;font-weight:bold;letter-spacing:.22em;color:var(--green);margin:0 0 18px}h1{font-size:clamp(28px,3.25vw,48px);line-height:1.75;letter-spacing:.02em}h1 em{font-style:normal}.intro{font-family:'Yu Mincho',serif;font-size:20px;line-height:1.8;margin-top:24px}.herocopy>p:not(.intro):not(.eyebrow):not(.heroprice){font-size:13px;color:var(--muted)}.heroimage{position:relative;overflow:hidden;min-height:620px}.heroimage>img{width:100%;height:100%;object-fit:cover;object-position:53% center}.heroimage figcaption{position:absolute;bottom:16px;right:20px;font-size:9px;background:#fffdf0dd;padding:3px 10px}.vertical{position:absolute;top:36px;right:30px;writing-mode:vertical-rl;color:#fff;text-shadow:0 1px 8px #0008;letter-spacing:.22em;font-family:'Yu Mincho',serif}.heroactions{display:flex;flex-direction:column;align-items:flex-start;gap:18px;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;background:var(--green);color:white;font-size:13px;padding:16px 24px;line-height:1.6;transition:background .2s}.btn:hover{background:#3c6650}.textlink{font-size:13px;border-bottom:1px solid #9fab9d;padding-bottom:4px}.heroprice{font-size:11px;border-top:1px solid var(--line);padding-top:22px}.heroprice strong{font-family:Georgia,serif;font-size:28px;margin-left:9px;font-weight:normal}.heroprice small{display:block;font-size:10px;color:var(--muted)}.earlyband{padding:32px 7%;display:flex;justify-content:space-between;align-items:center;background:var(--sage);gap:24px}.earlyband h2{font-size:21px}.earlyband .eyebrow{font-size:9px;margin-bottom:6px}.earlyfigure{font-size:12px;display:flex;align-items:center;gap:16px}.earlyfigure strong{font-family:Georgia,serif;font-size:55px;font-weight:normal;line-height:1}.earlyfigure small{font-size:20px}.earlyband>a{font-size:12px;border-bottom:1px solid var(--green)}.section{max-width:1240px;margin:auto;padding:100px 50px}.sectionhead{margin-bottom:42px}.sectionhead>p:not(.eyebrow){color:var(--muted);font-size:14px}.promiserow{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.promiserow article{border-top:1px solid var(--line);padding:24px 0}.promiserow article>span{font-family:Georgia,serif;font-size:20px;color:var(--gold)}.promiserow h3{font-size:20px;margin-top:16px}.promiserow p{font-size:12px;color:var(--muted);margin-top:13px}.familystory{background:var(--cream);display:grid;grid-template-columns:60% 40%;align-items:center}.familystory figure{position:relative}.familystory img{width:100%}.familystory figcaption{position:absolute;bottom:10px;left:15px;font-size:9px;background:#fffdf0dd;padding:2px 7px}.familystory>div{padding:45px 14%}.familystory h2{font-size:30px}.familystory p{font-size:13px}.familystory .textlink{display:inline-block;margin-top:28px}.plangrid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.plan{border:1px solid var(--line);padding:34px}.plan.featured{background:var(--cream)}.planlabel{font:11px Arial;letter-spacing:.17em;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:25px}.planlabel span{float:right;letter-spacing:.05em;font-family:sans-serif}.plan h3{font-family:'Yu Mincho',serif;font-size:27px}.plan>p{font-size:13px}.bigprice{font:56px Georgia,serif;padding:25px 0;color:var(--green)}.bigprice small{font-size:20px;margin-right:8px}.bigprice span{font-size:12px;font-family:sans-serif;margin-left:15px}.plan ul,.earlycard ul{padding-left:20px;font-size:13px;line-height:2.1}.small{font-size:11px!important;color:var(--muted)}.light{background:var(--sage);color:var(--green);margin-top:25px}.ageprices{display:flex;justify-content:space-between;gap:10px;margin-top:28px}.ageprices div{border-left:1px solid var(--line);padding-left:15px}.ageprices b{font-size:12px;font-weight:normal}.ageprices strong{font-family:Georgia,serif;font-size:27px;font-weight:normal;display:block}.benefit{background:white;border-left:3px solid var(--green);font-size:12px;padding:14px 18px;margin-top:20px}.benefit strong{font-size:16px}.familybenefit{display:grid;grid-template-columns:230px 1fr;gap:20px;padding:25px 0;border-bottom:1px solid var(--line);align-items:center}.familybenefit>strong{font-size:14px}.familybenefit p{margin:0;font-size:12px}.extras{margin-top:25px;display:flex;gap:30px;align-items:center;flex-wrap:wrap}.extras span{font-size:13px}.extras b{font-size:19px;margin-left:12px}.extras p{margin:0;font-size:11px;color:var(--muted)}.estimate{margin-top:45px;padding:30px;background:var(--sage);display:grid;grid-template-columns:1fr 1.2fr;gap:25px}.estimate h3{font-size:22px}.estimate .eyebrow{margin-bottom:8px}.controls{display:grid;grid-template-columns:1fr 1fr;gap:15px}.controls label{font-size:11px}.controls label:first-child{grid-column:1/-1}select{width:100%;background:white;padding:10px;border:1px solid #aab9aa;border-radius:0;color:var(--green);font-size:13px;margin-top:3px}.estimateprice{grid-column:1/-1;border-top:1px solid #cbd5c9;padding-top:15px;display:flex;justify-content:space-between;align-items:center}.estimateprice span{font-size:12px}.estimateprice strong{font:36px Georgia,serif}.location{max-width:none;background:var(--cream);padding-left:max(50px,calc((100% - 1140px)/2));padding-right:max(50px,calc((100% - 1140px)/2))}.settinggrid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.settinggrid article+article{border-left:1px solid var(--line);padding-left:70px}.tag{background:var(--green);color:#fff;font-size:10px;padding:5px 12px;display:inline-block;margin-bottom:18px}.tag.neutral{background:#dddccf;color:var(--ink)}.settinggrid h3{font-family:'Yu Mincho',serif;font-size:29px}.settinggrid h3 small{font-size:16px}.settingintro{font-size:15px}.settinggrid ol{padding-left:23px;font-size:13px;line-height:2.6;margin:22px 0}.settinggrid strong{font-size:13px}.wardrobe{text-align:center}.wardrobetabs{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:35px 0 22px}.wardrobetabs button{border:1px solid var(--line);padding:10px 26px;background:#fff;cursor:pointer;color:var(--green);font-size:13px}.wardrobetabs button.active{background:var(--green);color:white;border-color:var(--green)}.wardrobeplaceholder{padding:55px 25px;background:repeating-linear-gradient(45deg,#f5f4ee,#f5f4ee 5px,#f8f7f2 5px,#f8f7f2 10px);border:1px solid var(--line)}.wardrobeplaceholder>span{font-size:10px;letter-spacing:.2em;color:var(--muted)}.wardrobeplaceholder h3{margin-top:12px}.wardrobeplaceholder p{font-size:14px;margin-top:12px}.wardrobeplaceholder small{font-size:11px;display:block;margin-top:10px;color:var(--muted)}.albumsection{display:grid;grid-template-columns:1fr 1fr;align-items:center;background:var(--cream);gap:60px;padding:60px max(50px,calc((100% - 1140px)/2))}.albumsection img{max-height:350px;width:100%;object-fit:contain}.albumsection h2{font-size:30px}.albumsection p{font-size:14px}.albumsection small{display:block;font-size:10px;color:var(--muted);margin-top:15px}.earlycard{background:var(--sage);display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:45px}.earlycard h2{font-size:24px}.discount{font:100px Georgia,serif;line-height:1;margin-top:15px}.discount span{font-size:34px}.earlycard h3{font-size:18px}.earlycard .btn{margin-top:15px}.flow{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.flow article{border-top:1px solid var(--line);padding-top:18px}.flow span{font:22px Georgia,serif;color:var(--gold)}.flow h3{font-size:16px;margin-top:15px}.flow p{font-size:12px;color:var(--muted)}.services{background:var(--cream);max-width:none;padding-left:max(50px,calc((100% - 1140px)/2));padding-right:max(50px,calc((100% - 1140px)/2))}.servicegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.servicegrid article{border-top:1px solid var(--line);padding-top:25px}.servicegrid small{font:10px Arial;letter-spacing:.1em;color:var(--muted)}.servicegrid h3{font-size:20px;margin-top:20px}.servicegrid p{font-size:13px;color:var(--muted)}.servicegrid a{font-size:12px;display:inline-block;margin-top:20px;border-bottom:1px solid #a9b7a6}.faq{max-width:950px}details{border-bottom:1px solid var(--line);padding:22px 0}summary{cursor:pointer;font-size:14px;list-style:none;padding-right:30px;position:relative}summary:after{content:'＋';position:absolute;right:0;color:var(--green)}details[open] summary:after{content:'−'}details p{font-size:13px;color:var(--muted);padding-right:25px}.contact{padding:75px max(50px,calc((100% - 1140px)/2));display:grid;grid-template-columns:1.3fr 1fr;gap:70px;background:var(--deep);color:#fff}.contact .eyebrow{color:#c9d2bd}.contact h2{font-size:34px}.contact p{font-size:13px;color:#d6e0d8}.cream{background:var(--cream);color:var(--green);margin-top:25px}.cream:hover{background:white}.email{display:block;font-size:13px;margin-top:20px}.contact small{display:block;font-size:10px;color:#bfcbbf;margin-top:10px}.address{border-left:1px solid #4b6855;padding-left:60px}.address img{width:90px;background:#fff;border-radius:50%;margin-bottom:20px}.address h3{font-size:17px}.address a{display:inline-block;font-size:12px;margin-top:18px}.reviewnotes{padding:25px 7%;background:#f4eee3;font-size:12px}.reviewnotes p{font-size:11px;margin-top:8px;color:#796e58}footer{display:flex;justify-content:space-between;font-size:10px;padding:20px 7%;color:var(--muted)}.mobilebar,.mobile{display:none}
@media(min-width:1500px){.hero{min-height:760px}.heroimage{min-height:760px}.herocopy{padding-top:100px}}
@media(max-width:1050px){nav{gap:15px;font-size:10px}header{padding:0 4%}.brand span{font-size:14px}.hero{grid-template-columns:43% 57%}.herocopy{padding:45px 9%}.heroimage{min-height:590px}.earlyband{padding:30px 5%;gap:15px}.earlyband h2{font-size:18px}.earlyfigure{display:block}.earlyfigure strong{display:block;margin-top:8px}.familystory>div{padding:35px 10%}.familystory h2{font-size:24px}.plan{padding:25px}.ageprices strong{font-size:23px}.settinggrid{gap:35px}.settinggrid article+article{padding-left:35px}.contact{gap:40px}.address{padding-left:35px}}
@media(max-width:700px){html{scroll-padding-top:20px}body{font-size:14px}.preview{font-size:8px;padding:6px 10px}.preview span{display:block;margin:0;font-size:9px;letter-spacing:0}header{height:85px;padding:0 22px}.brand img{width:54px;height:54px}.brand span{font-size:14px}.brand small{font-size:7px}.brand{gap:11px}#menu{display:block;background:none;border:1px solid var(--line);color:var(--green);font-size:20px;width:42px;height:42px;cursor:pointer}nav{display:none;position:absolute;top:85px;left:0;right:0;background:white;padding:20px;box-shadow:0 10px 20px #0001;font-size:14px}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:14px}.hero{display:flex;flex-direction:column}.herocopy{padding:33px 25px 30px}.heroimage{min-height:0;height:auto}.heroimage>img{height:auto;object-fit:contain}.vertical{font-size:11px;right:14px;top:20px}.heroimage figcaption{font-size:8px;bottom:8px;right:8px}h1{font-size:32px;line-height:1.65}.eyebrow{font-size:8px;margin-bottom:16px}.intro{font-size:18px;margin-top:16px}.herocopy>p:not(.intro):not(.eyebrow):not(.heroprice){font-size:12px;margin-top:16px}.heroactions{margin-top:22px;gap:15px}.btn{font-size:12px;padding:15px 20px}.heroprice{margin-top:25px;padding-top:16px}.heroprice strong{font-size:25px}.earlyband{padding:26px 25px;display:grid;grid-template-columns:1fr 1fr;gap:16px}.earlyband h2{font-size:16px}.earlyfigure{font-size:10px;text-align:right}.earlyfigure strong{font-size:48px}.earlyfigure small{font-size:17px}.earlyband>a{grid-column:1/-1;font-size:11px;justify-self:start}.section{padding:60px 25px}.sectionhead{margin-bottom:28px}h2{font-size:27px}.sectionhead>p:not(.eyebrow){font-size:12px}.promiserow{grid-template-columns:1fr 1fr;gap:15px 25px}.promiserow article{padding:18px 0}.promiserow h3{font-size:17px}.promiserow p{font-size:11px}.familystory{display:flex;flex-direction:column}.familystory>div{padding:35px 25px 42px;width:100%}.familystory h2{font-size:27px}.familystory figcaption{font-size:8px;left:8px;bottom:8px}.familystory p{font-size:13px}.plangrid{grid-template-columns:1fr;gap:20px}.plan{padding:26px}.plan h3{font-size:26px}.bigprice{font-size:50px}.ageprices strong{font-size:26px}.familybenefit{grid-template-columns:1fr;gap:10px}.familybenefit p{font-size:11px}.extras{gap:14px;margin-top:20px}.extras span{display:block;width:100%}.extras b{float:right}.estimate{padding:22px;display:block;margin-top:30px}.controls{margin-top:20px}.estimateprice{margin-top:20px;display:block}.estimateprice strong{display:block;font-size:36px}.settinggrid{grid-template-columns:1fr;gap:35px}.settinggrid article+article{border-left:none;border-top:1px solid var(--line);padding:30px 0 0}.settinggrid h3{font-size:25px}.wardrobetabs{gap:7px}.wardrobetabs button{padding:9px 15px;font-size:12px}.wardrobeplaceholder{padding:40px 17px}.wardrobeplaceholder small{font-size:10px}.albumsection{display:flex;flex-direction:column;padding:40px 25px;gap:25px;align-items:stretch}.albumsection img{max-height:250px}.albumsection h2{font-size:27px}.earlycard{display:block;padding:28px 22px}.earlycard h2{font-size:22px}.earlycard>div+div{margin-top:28px;border-top:1px solid #c5d1c2;padding-top:25px}.discount{font-size:85px}.earlycard ul{font-size:12px}.flow{grid-template-columns:1fr 1fr;gap:25px}.flow h3{font-size:14px}.flow p{font-size:11px}.servicegrid{grid-template-columns:1fr;gap:30px}.servicegrid h3{font-size:21px}summary{font-size:13px}details p{font-size:12px}.contact{grid-template-columns:1fr;padding:50px 25px;gap:40px}.contact h2{font-size:28px}.address{border-left:none;border-top:1px solid #4b6855;padding:30px 0 0}.address img{width:75px}.reviewnotes{padding:22px 25px}footer{padding:22px 25px 85px;gap:15px;align-items:center;font-size:9px}.mobilebar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:8;background:#fff;border-top:1px solid var(--line);padding:9px 12px max(9px,env(safe-area-inset-bottom));gap:8px}.mobilebar a{font-size:12px;text-align:center;padding:11px 8px;flex:1;border:1px solid var(--green)}.mobilebar a+ a{background:var(--green);color:white;flex:1.4}.mobile{display:initial}.desktop{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media(max-width:700px){.heroimage{order:-1}.herocopy{padding-top:28px}h1{font-size:29px}.vertical{display:none}}
.plangrid>*{min-width:0}@media(max-width:700px){.plangrid{grid-template-columns:minmax(0,1fr)}.ageprices{gap:6px}.ageprices div{padding-left:8px}.ageprices strong{font-size:23px}.earlyband{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.wedding{background:#fbfaf7;border-top:1px solid var(--line)}.weddingintro{max-width:1240px;padding:85px 50px 45px;margin:auto;display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:50px}.weddingintro>p{color:var(--muted);font-size:14px}.weddinghero{max-width:1140px;margin:auto;position:relative}.weddinghero img{width:100%;height:auto;max-height:650px;object-fit:cover;object-position:center 75%}.weddinghero figcaption{position:absolute;right:15px;bottom:15px;background:#fffdf0dd;padding:3px 10px;font-size:10px}.weddinggallery{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:1140px;margin:24px auto 0}.weddinggallery img{width:100%;aspect-ratio:1.65;object-fit:cover}.weddinggallery figcaption{font-size:10px;color:var(--muted);margin-top:7px}.weddingplans{max-width:1240px;margin:auto;padding:70px 50px 80px}.wedding .plan{background:#fff}.wedding .plan.featured{background:var(--sage)}.weddingincludes{padding:35px 0 20px;margin-top:25px;border-bottom:1px solid var(--line)}.weddingincludes>h3{font-family:'Yu Mincho',serif;font-size:24px}.weddingincludes>div{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.weddingincludes p{font-size:13px;line-height:2}.weddingincludes strong{display:inline-block;margin-bottom:8px;font-size:14px}.weddingdelivery{font-size:12px;color:var(--muted)}.weddingterms{margin-top:25px}.weddingnote{margin-top:20px}.weddingcontact{background:#fff;display:flex;justify-content:space-between;gap:25px;align-items:center;padding:30px;margin-top:35px}.weddingcontact h3{font-size:20px}.weddingcontact p{font-size:12px;margin-top:10px}.weddingcontact .btn{white-space:nowrap}header nav{gap:20px}
@media(max-width:1050px){header nav{gap:13px}.weddinghero,.weddinggallery{margin-left:50px;margin-right:50px}.weddingcontact{display:block}.weddingcontact .btn{margin-top:20px}}
@media(max-width:700px){.weddingintro{display:block;padding:60px 25px 30px}.weddingintro>p{font-size:12px;margin-top:22px}.weddinghero{margin:0}.weddinghero img{max-height:none;object-fit:contain}.weddinghero figcaption{font-size:8px;bottom:8px;right:8px}.weddinggallery{grid-template-columns:1fr;gap:22px;margin:22px 25px 0}.weddinggallery figcaption{font-size:9px}.weddingplans{padding:50px 25px}.wedding .planlabel{font-size:10px;letter-spacing:.1em}.wedding .bigprice{font-size:48px}.wedding .bigprice span{font-size:10px;margin-left:8px}.weddingincludes>div{grid-template-columns:1fr;gap:6px}.weddingincludes>h3{font-size:20px}.weddingincludes p{font-size:12px}.weddingcontact{padding:24px}.weddingcontact h3{font-size:18px}.weddingcontact .btn{white-space:normal}.weddingcontact p{font-size:11px}}
.categorybar{position:sticky;top:0;z-index:7;background:#fffefb;box-shadow:0 3px 12px #183d2c0c;border-bottom:1px solid var(--line);padding:12px 5%;display:flex;justify-content:center;align-items:center;gap:14px}.categorybar>span{font-size:11px;letter-spacing:.08em;margin-right:10px;color:var(--muted)}.categorybar>a{display:flex;align-items:center;justify-content:space-between;gap:28px;min-width:170px;padding:10px 18px;border:1px solid var(--green);border-radius:30px;font-size:13px;line-height:1.5;transition:background .2s,color .2s}.categorybar>a:hover{background:var(--green);color:#fff}.categorybar b{font-weight:normal}#events{scroll-margin-top:100px}
@media(max-width:700px){html{scroll-padding-top:90px}.categorybar{padding:10px 12px;gap:7px;justify-content:stretch}.categorybar>span{display:none}.categorybar>a{min-width:0;gap:5px;padding:10px 9px;font-size:10px;white-space:nowrap;justify-content:center;flex:1}.categorybar>a:last-child{flex:1.4}.categorybar b{font-size:10px}#events{scroll-margin-top:90px}}

#events{scroll-margin-top:0}

/* Website-exclusive imagery and occasion features */
.occasionstory{display:grid;grid-template-columns:1.08fr 1fr;align-items:center;background:var(--cream);scroll-margin-top:0}.occasionstory>figure{position:relative;align-self:stretch}.occasionstory figure img{width:100%;height:100%;min-height:490px;object-fit:cover}.occasionstory figcaption{position:absolute;left:14px;bottom:14px;background:#fffef4e6;color:var(--ink);padding:4px 9px;font-size:9px}.occasionstory>div{padding:60px 10%}.occasionstory p{font-size:14px}.occasionstory .small{font-size:11px}.occasionstory .btn{margin-top:25px}.parentsstory{background:#f1f3ed}.eventstory{background:var(--green);color:#fff}.eventstory .eyebrow,.eventstory .small{color:#dce8dc}.eventstory .btn{background:#f5f1e6;color:var(--green)}.graduationstory{background:#f4efe8}.graduationprices{border-top:1px solid #c9cfc5;border-bottom:1px solid #c9cfc5;padding:10px 0 15px;margin-top:25px}.graduationprices p{display:flex;justify-content:space-between;align-items:center;margin:8px 0}.graduationprices strong{font-size:27px;font-family:Georgia,serif;font-weight:normal}.graduationprices small{font-size:10px}.albumtext{padding:60px 8%;gap:50px}.albumtext>div{padding:0}.categorybar>a{min-width:130px}.categorybar>a:last-child{min-width:110px}
@media(max-width:700px){.occasionstory{grid-template-columns:1fr}.occasionstory figure img{min-height:0;height:auto;aspect-ratio:1.25;object-fit:cover}.occasionstory>div{padding:36px 25px 45px}.occasionstory p{font-size:12px}.occasionstory figcaption{font-size:8px;left:8px;bottom:8px}.albumtext{padding:40px 25px;gap:20px}.categorybar{padding:8px 10px;gap:5px;display:grid;grid-template-columns:.8fr 1.15fr 1.65fr .8fr}.categorybar>a,.categorybar>a:last-child{min-width:0;padding:9px 4px;font-size:9px;gap:3px}.categorybar b{font-size:8px}.graduationprices strong{font-size:25px}}
@media(min-width:701px) and (max-width:1300px){h1{font-size:clamp(25px,2.5vw,34px);letter-spacing:.03em}}
@media(max-width:700px){.categorybar{grid-template-columns:1fr 1fr;gap:6px;padding:8px 12px}.categorybar>a,.categorybar>a:last-child{font-size:11px;padding:9px 10px;justify-content:space-between}.categorybar b{font-size:11px}html{scroll-padding-top:112px}}
.occasionstory{grid-template-columns:minmax(0,1.08fr) minmax(0,1fr)}.occasionstory>*{min-width:0}.occasionstory>figure{min-height:490px}.occasionstory figure img{position:absolute;inset:0;width:100%;height:100%;min-height:0}.occasionstory>div{min-width:0}
@media(max-width:700px){.occasionstory{grid-template-columns:minmax(0,1fr)}.occasionstory>figure{min-height:0}.occasionstory figure img{position:static;height:auto;aspect-ratio:1.25}}
/* Preserve source proportions for the family photo on every screen. */
.familystory img{width:100%;height:auto;object-fit:contain}

/* Individual yukata rental page */
.categorybar a[aria-current=page]{background:var(--green);color:#fff}.yukatahero{background:var(--cream)}.yukataintro{max-width:1140px;margin:auto;padding:40px 50px 55px;text-align:center}.backlink{display:block;text-align:left;font-size:11px;color:var(--muted);margin-bottom:30px}.yukataintro h1{font-size:clamp(32px,4vw,49px);line-height:1.65}.yukataintro h1 em{font-style:normal;color:var(--green)}.yukataintro .eyebrow{margin-top:0}.yukataintro>p:not(.eyebrow){font-size:14px;color:var(--muted)}.yukataintro .heroactions{justify-content:center}.yukatasummary{display:flex;justify-content:center;gap:12px;margin-top:30px}.yukatasummary span{border:1px solid var(--line);border-radius:20px;padding:5px 17px;font-size:11px;background:#fff}.yukatahero>figure{position:relative;max-width:1140px;margin:auto}.yukatahero img{width:100%;height:auto;object-fit:contain}.yukatahero figcaption{position:absolute;bottom:12px;right:12px;background:#fffff0e6;padding:4px 8px;font-size:9px}.yukatapricegrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.yukatapricegrid article{background:var(--cream);padding:35px;text-align:center;border-top:3px solid var(--green)}.yukatapricegrid article>span{font-size:10px;color:var(--muted);letter-spacing:.15em}.yukatapricegrid h3{margin-top:12px;font-family:'Yu Mincho',serif}.yukatapricegrid article>p:last-child{font-size:11px}.yukataprice{font-family:Georgia,serif;font-size:65px;line-height:1.1;color:var(--green);margin-top:20px}.yukataprice small{font-size:22px;margin-right:7px}.rentalperiod{background:var(--sage);padding:25px 30px;margin-top:25px;display:flex;gap:35px;align-items:center}.rentalperiod strong{white-space:nowrap;font-weight:500;font-size:18px}.rentalperiod p{font-size:12px;margin:0}.yukataoptions{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:50px;border-top:1px solid var(--line);padding-top:35px}.yukataoptions h3{font-size:24px}.yukataoptions p{font-size:12px}.yukataoptions dl{margin:0}.yukataoptions dl>div{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:13px 0;font-size:13px}.yukataoptions dd{margin:0;font-family:Georgia,serif;font-size:19px}.yukataflow{background:#f7f8f4;max-width:none}.yukataflow>.sectionhead,.yukataflow>.flow{max-width:1140px;margin-left:auto;margin-right:auto}.yukatafaq{max-width:1000px}
@media(max-width:700px){.categorybar>a:last-child:nth-of-type(5){grid-column:1/-1;justify-content:center;gap:18px}html{scroll-padding-top:155px}.yukataintro{padding:25px 25px 35px;text-align:left}.yukataintro h1{font-size:28px;letter-spacing:.02em}.yukataintro>p:not(.eyebrow){font-size:12px}.yukataintro .heroactions{justify-content:flex-start}.backlink{margin-bottom:25px}.yukatasummary{justify-content:flex-start;gap:7px}.yukatasummary span{padding:4px 12px;font-size:10px}.yukatahero figcaption{font-size:8px;bottom:7px;right:7px}.yukatapricegrid{grid-template-columns:1fr;gap:12px}.yukatapricegrid article{padding:24px}.yukatapricegrid h3{font-size:23px}.yukataprice{font-size:53px;margin-top:15px}.rentalperiod{display:block;padding:23px}.rentalperiod strong{font-size:18px}.rentalperiod p{margin-top:12px;font-size:11px}.yukataoptions{grid-template-columns:1fr;gap:20px;margin-top:35px}.yukataoptions h3{font-size:23px}.yukataoptions dl>div{font-size:12px}}
.yukatahero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}.yukataintro{padding:40px 10% 45px;text-align:left}.yukataintro h1{font-size:clamp(28px,3vw,42px)}.yukataintro .heroactions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;justify-content:flex-start}.yukataintro .heroactions .textlink{margin:0}.yukatasummary{justify-content:flex-start;flex-wrap:wrap}.yukatahero>figure{margin:0;max-width:none;position:relative;min-height:580px}.yukatahero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:45% center}
@media(max-width:700px){.yukatahero{grid-template-columns:1fr}.yukatahero>figure{order:-1;min-height:0}.yukatahero img{position:static;height:auto;object-fit:contain}.yukataintro{padding:28px 25px 35px}.yukataintro h1{font-size:27px}.yukataintro .heroactions{gap:15px}.yukataintro .backlink{margin-bottom:20px}}

/* Show both graduation styles without confusing furisode with hakama. */
.graduationstory>.graduationvisuals{padding:0;display:grid;grid-template-rows:1fr 1fr;align-self:stretch;gap:10px;background:#fff}.graduationvisuals figure{position:relative;min-height:300px}.graduationvisuals figure img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.graduationstory h2{font-size:clamp(25px,2.7vw,36px)}
@media(max-width:700px){.graduationstory>.graduationvisuals{gap:8px}.graduationvisuals figure{min-height:0}.graduationvisuals figure img{position:static;width:100%;height:auto;aspect-ratio:auto;object-fit:contain}.graduationstory h2{font-size:27px}}

/* Graduation: three complete portraits, never cropped. */
.graduationsection{background:#f4efe8;padding:75px max(25px,calc((100% - 1140px)/2))}.graduationsection>.sectionhead{max-width:1140px;margin:0 auto 35px}.gradlookgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.gradlookgrid article{background:#fff;min-width:0}.gradlookgrid figure{margin:0;background:#edf0e8}.gradlookgrid img{display:block;width:100%;height:auto;object-fit:contain}.gradlookgrid article>div{padding:24px}.gradlookgrid span{font-size:9px;letter-spacing:.12em;color:var(--muted)}.gradlookgrid h3{font-family:'Yu Mincho',serif;font-size:24px;margin-top:8px}.gradlookgrid strong{font-family:Georgia,serif;font-weight:normal;font-size:35px;display:block;margin-top:10px}.gradlookgrid small{font-size:10px}.gradimagedisclaimer{font-size:10px;color:var(--muted);margin-top:15px}.gradconditions{display:grid;grid-template-columns:1.15fr 1fr;gap:50px;border-top:1px solid #cdd4c9;margin-top:30px;padding-top:30px}.gradconditions h3{font-size:23px}.gradconditions p{font-size:13px}.gradconditions .small{font-size:11px}.gradconditions .btn{margin-top:8px}
@media(max-width:700px){.graduationsection{padding:50px 25px}.gradlookgrid{grid-template-columns:1fr;gap:24px}.gradlookgrid article>div{padding:20px}.gradlookgrid h3{font-size:23px}.gradlookgrid strong{font-size:33px}.gradconditions{grid-template-columns:1fr;gap:18px}.gradimagedisclaimer{font-size:9px}.gradlookgrid img{height:auto;object-fit:contain}}

.gradlookgrid figcaption{font-size:9px;color:var(--muted);padding:5px 12px;background:#f8f8f3}
/* Family options and transparent early-booking calculation. */
.estimate{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.parentoptions{grid-column:1/-1;margin:0;padding:20px;border:1px solid #c4d0c1;display:grid;grid-template-columns:1fr 1fr;gap:18px}.parentoptions legend{font-size:13px;padding:0 8px}.parentoptions label,.earlyoption label{display:flex;gap:12px;align-items:flex-start;cursor:pointer;font-size:13px}.parentoptions input,.earlyoption input{width:18px;height:18px;flex-shrink:0;margin:4px 0 0;accent-color:var(--green)}.parentoptions small,.earlyoption small{display:block;font-size:10px;line-height:1.8;color:var(--muted);margin-top:5px}.earlyoption{grid-column:1/-1;background:#fff;padding:20px}.earlyoption strong{font-size:14px;font-weight:500}.quotedetails{grid-column:1/-1;background:#fff;padding:25px}.quotedetails h4{font-size:13px;font-weight:500;margin:0 0 15px}.quotedetails dl{margin:0}.quotedetails dl>div{display:flex;justify-content:space-between;gap:20px;padding:10px 0;border-bottom:1px solid var(--line);font-size:12px}.quotedetails dd{margin:0;white-space:nowrap}.quotedetails .estimateprice{margin-top:20px;padding-top:20px;display:flex}.quotedetails .estimateprice strong{font-size:38px;white-space:nowrap}.estimatefootnote{grid-column:1/-1;margin-top:0!important}#deposit-summary{background:var(--cream);padding:18px;margin-top:20px}#deposit-summary p{display:flex;justify-content:space-between;gap:15px;font-size:12px;margin:0 0 8px}#deposit-summary strong{white-space:nowrap}#deposit-summary small{display:block;font-size:10px;line-height:1.8;color:var(--muted)}[hidden]{display:none!important}
@media(max-width:700px){.estimate{display:block}.parentoptions{grid-template-columns:1fr;margin-top:22px;padding:16px;gap:20px}.parentoptions label,.earlyoption label{font-size:12px}.earlyoption{margin-top:18px;padding:16px}.earlyoption strong{font-size:12px}.quotedetails{margin-top:18px;padding:18px}.quotedetails dl>div{font-size:11px;gap:12px}.quotedetails .estimateprice{display:block}.quotedetails .estimateprice strong{font-size:36px;margin-top:6px}.estimatefootnote{margin-top:16px!important}#deposit-summary{padding:13px}#deposit-summary p{font-size:11px}}

.bookingpolicy{margin-top:32px;padding:28px;background:#f1f4ed;border:1px solid #d6dfd2;border-radius:8px}.bookingpolicy h3{margin:0 0 16px}.bookingpolicy p{line-height:1.9;margin:12px 0}.bookingpolicy p:last-child{margin-bottom:0}

.normalplan{padding:32px;background:#f0f4ed;border:1px solid #d6dfd2;border-radius:8px;margin-bottom:40px}.normalplan h3,.campaignintro h3{font-size:28px;margin:12px 0}.normalplan .ageprices{max-width:600px}.campaignintro{margin:40px 0 24px}.campaignstatus{display:inline-block;padding:12px 20px;background:#eee6d8;border-radius:4px}.modecontrol{margin:24px 0}.modecontrol label{display:grid;gap:8px}.modecontrol select{padding:14px;width:100%;max-width:650px;font:inherit;border:1px solid #9ca99e;background:white}.earlyoption input:disabled+span{opacity:.65}

.shopgallery{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;background:#f1f3ed;border:1px solid #d8dfd4}.shopgallery figure{margin:0;background:#e8ece4}.shopgallery img{display:block;width:100%;height:auto;max-height:640px;object-fit:contain}.shopgallery figcaption{padding:14px 20px;font-size:12px;color:#526258}.shopgallerycopy{padding:40px}.shopgallerycopy h3{font-size:26px;line-height:1.6}.shopnotice{font-weight:600;padding-bottom:16px;border-bottom:1px solid #c9d4c7}.shopgallerycopy p{line-height:1.9}@media(max-width:700px){.shopgallery{grid-template-columns:1fr}.shopgallerycopy{padding:24px}.shopgallerycopy h3{font-size:22px}.shopgallery img{max-height:none}}

.legacy-service-nav{display:flex;flex-wrap:wrap;gap:16px;padding:30px 5%;background:#f0f3ec;font-size:14px}.legacy-service-nav a{text-decoration:underline;text-underline-offset:4px}.rental-table{max-width:760px;padding:28px;background:#f0f3ec;margin:28px 0}.rental-table dl div{display:flex;justify-content:space-between;gap:24px;border-bottom:1px solid #ced7ca;padding:14px 0}.rental-table dd{margin:0;font-weight:600;white-space:nowrap}@media(max-width:700px){.legacy-service-nav{display:flex;gap:16px}.rental-table{padding:20px}.rental-table dl div{font-size:14px}}
.legacy-service-nav{position:static;top:auto;left:auto;right:auto;box-shadow:none;align-items:center}

/* November preview promotion: distinct burgundy/gold, never applies to standard plans. */
.november-campaign{--promo:#722c3c;--promo-ink:#542333;--promo-gold:#b18a45;margin:42px 0 28px;padding:34px;border:2px solid var(--promo-gold);border-radius:12px;background:#f5eae4;color:var(--promo-ink);box-shadow:0 8px 25px #5423330d;overflow:hidden}.november-campaign .campaignintro{margin:0 0 28px}.campaign-ribbon{display:inline-block;margin:0 0 20px;padding:8px 22px;background:var(--promo);color:#fff7e8;font-weight:700;letter-spacing:.12em;border:1px solid #caaa6f;border-radius:3px;font-size:18px}.november-campaign .eyebrow{color:var(--promo);font-size:10px}.november-campaign .campaignintro h3{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:32px;line-height:1.65;color:var(--promo-ink)}.november-campaign .campaignintro h3 span{font-size:.8em}.november-campaign .campaignintro>p:not(.eyebrow):not(.campaign-ribbon){font-size:14px}.november-campaign .campaignstatus{display:block;background:#fff8e9;border:1px solid #bd9755;color:var(--promo-ink);font-size:16px!important;padding:14px 18px;line-height:1.7}.november-campaign .plan,.november-campaign .plan.featured{background:#fffaf0;color:var(--promo-ink);border:1px solid #bb9557;border-top:5px solid var(--promo);border-radius:6px;padding:28px;min-width:0}.november-campaign .planlabel{color:var(--promo);border-color:#dcc7a5}.campaign-perk{padding:12px 14px;margin:20px 0!important;color:#fff;background:var(--promo);font-weight:700;font-size:15px!important;line-height:1.65;border-radius:4px}.campaign-perk span{display:block;font-size:12px;font-weight:500;margin-top:5px;color:#fff4dc}.november-campaign .plan h3{color:var(--promo-ink);font-size:27px}.november-campaign .bigprice,.november-campaign .ageprices strong{color:var(--promo)}.november-campaign .ageprices{gap:8px;margin-top:18px}.november-campaign .ageprices div{border-color:#dcc7a5;min-width:0}.november-campaign .ageprices strong{font-size:26px}.campaign-price-basis{font-size:14px!important;margin-top:24px!important;color:var(--promo-ink)}.campaign-surcharge{padding:12px 0 14px;border-top:1px solid #dcc7a5;border-bottom:1px solid #dcc7a5;line-height:1.8;font-size:14px!important}.campaign-surcharge strong,.campaign-surcharge span{display:block}.campaign-surcharge span{font-size:12px;margin-top:5px}.november-campaign .benefit{background:#f2e4c6;color:var(--promo-ink);border:1px solid #c7a461}.november-campaign .btn{background:var(--promo);color:#fff8eb}.november-campaign .btn:hover{background:#592130}.november-campaign .small{color:#654b43}.standard-price-basis,.standard-studio-fee{font-size:16px}.standard-weekend-fee{font-size:14px}
@media(max-width:700px){.november-campaign{padding:22px 14px;margin:30px 0 24px;border-radius:8px}.campaign-ribbon{font-size:17px;padding:8px 16px;letter-spacing:.08em}.november-campaign .campaignintro h3{font-size:27px}.november-campaign .campaignstatus{font-size:14px!important;padding:12px}.november-campaign .plan,.november-campaign .plan.featured{padding:22px 16px}.november-campaign .plangrid{gap:22px;grid-template-columns:minmax(0,1fr)}.november-campaign .ageprices{gap:4px}.november-campaign .ageprices div{padding-left:6px}.november-campaign .ageprices strong{font-size:21px;white-space:nowrap}.november-campaign .plan h3{font-size:25px}.campaign-perk{font-size:14px!important;padding:11px 12px}.campaign-price-basis,.campaign-surcharge{font-size:13px!important}.standard-price-basis,.standard-studio-fee{font-size:15px}.standard-weekend-fee{font-size:13px}}

.november-campaign .campaignstatus{background:#722c3c;color:#fff8e8;border:2px solid #c5a15f;font-size:21px!important;padding:18px 22px;box-shadow:0 3px 0 #b18a45;font-weight:700}.november-campaign .campaignstatus strong{font-weight:700}@media(max-width:700px){.november-campaign .campaignstatus{font-size:18px!important;line-height:1.75;padding:15px 14px}}

.familybenefit{display:block;padding:26px 0}.familybenefit-main{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 24px}.familybenefit-main>strong{font-size:14px}.familybenefit-main p{font-size:14px;line-height:1.8}.familybenefit-main p>span,.familybenefit-main p>strong{display:inline-block}.familybenefit .familybenefit-note{margin-top:8px;font-size:12px;line-height:1.8}.familybenefit-note>span{display:inline-block;max-width:100%;vertical-align:top}.familybenefit-note>span+span{margin-left:1em}@media(max-width:700px){.familybenefit-main{display:block}.familybenefit-main>strong{font-size:13px}.familybenefit-main p{margin-top:9px;font-size:14px}.familybenefit .familybenefit-note{font-size:12px}.familybenefit-note>span{display:block;text-wrap:pretty}.familybenefit-note>span+span{margin:5px 0 0}}

.extras{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:28px}.extra-card{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:24px;background:#f2ead8;border:2px solid #ad8c50;border-radius:6px;color:#542333}.extra-card>span{font-size:19px!important;font-weight:700;width:auto!important}.extra-card>b{font-size:32px;line-height:1.3;white-space:nowrap;float:none!important}.extras .extras-total{grid-column:1/-1;margin:0;text-align:center;font-size:18px;line-height:1.7}.extras-total>span{font-size:13px!important;display:inline-block!important;width:auto!important}.extras .extras-discount-note{grid-column:1/-1;text-align:center;margin:0;font-size:12px;line-height:1.8}@media(max-width:700px){.extras{grid-template-columns:minmax(0,1fr);gap:12px}.extra-card{padding:18px 20px}.extra-card>span{font-size:18px!important}.extra-card>b{font-size:30px}.extras .extras-total{font-size:17px}.extras-total>span{display:block!important}.extras .extras-discount-note{font-size:12px;text-align:left}}

.standalone-intro{padding-bottom:38px}.standalone-tax{padding:14px 18px;background:#f1f4ed;border-left:4px solid var(--green)}.standalone-jumps{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.standalone-jumps>a{padding:12px 18px;border:1px solid #a4b39f;border-radius:3px;font-size:13px;background:#fff}.standalone-jumps>a.btn{background:var(--green);color:#fff}.standalone-heading{display:flex;gap:20px;align-items:flex-start}.standalone-heading>span{font:36px Georgia,serif;color:#a3834c}.standalone-heading h2 small{font:17px 'Yu Gothic',sans-serif;letter-spacing:0;display:inline-block;margin-top:4px}.standalone-section{padding-top:42px;padding-bottom:42px}.standalone-notice{background:#f8f2e7;padding:20px 24px;border-left:3px solid #b49255;font-size:14px;line-height:1.9}.standalone-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:28px}.standalone-card{background:#fff;border:1px solid #d5ddcf;border-top:4px solid #52745b;padding:24px;min-width:0}.standalone-card h3{font-size:23px;margin-bottom:14px}.standalone-card dl{margin:0}.standalone-card dl>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:13px 0;border-bottom:1px solid #e1e6dc;align-items:baseline}.standalone-card dt{font-size:14px}.standalone-card dd{font-size:20px;font-weight:700;margin:0;white-space:nowrap;color:var(--green)}.standalone-options{margin-top:28px;max-width:850px}.byo-section{background:#f6f7f2}.standalone-entry{background:#edf2e9;border-top:1px solid #d6dfd0;border-bottom:1px solid #d6dfd0}.standalone-entry h2{font-size:30px}.standalone-entry p{max-width:900px}.standalone-entry .btn{white-space:normal}@media(max-width:700px){.standalone-intro{padding-bottom:25px}.standalone-grid{grid-template-columns:minmax(0,1fr);gap:18px}.standalone-card{padding:20px 18px}.standalone-card dd{font-size:20px}.standalone-heading{gap:14px}.standalone-heading h2{font-size:26px}.standalone-heading h2 small{font-size:15px}.standalone-notice{padding:17px 18px;font-size:13px}.standalone-jumps{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.standalone-jumps>a{font-size:13px}.standalone-entry h2{font-size:26px}.standalone-card dt{font-size:14px;overflow-wrap:anywhere}.standalone-section{padding-top:35px;padding-bottom:35px}}

/* Prominent, gender-inclusive audience headings on the two promotion cards. */
.november-campaign .planlabel{display:flex;flex-direction:column;gap:12px;align-items:stretch;font:11px Arial,sans-serif;letter-spacing:.17em;padding-bottom:18px;margin-bottom:18px}.november-campaign .planlabel>span{float:none;display:block;padding:13px 18px;background:var(--promo);color:#fff8e8;border:1px solid #c9a45e;border-radius:4px;font:700 28px/1.5 'Yu Mincho','Hiragino Mincho ProN',serif;letter-spacing:.09em;text-align:center}.november-campaign .campaign-perk{margin-top:0!important;background:#f0e2c8;color:var(--promo-ink);border-left:3px solid #b18a45}.november-campaign .campaign-perk span{color:var(--promo-ink)}@media(max-width:700px){.november-campaign .planlabel>span{font-size:25px;padding:12px 14px}.november-campaign .planlabel{gap:10px}}

/* Six service tabs including the standalone price guide. */
.categorybar{display:grid;grid-template-columns:auto repeat(6,minmax(0,1fr));gap:10px;align-items:stretch}.categorybar>span{align-self:center;margin-right:0}.categorybar>a,.categorybar>a:last-child{min-width:0;min-height:44px;gap:8px;padding:9px 12px;font-size:12px;white-space:normal;justify-content:space-between;grid-column:auto}.categorybar>a:last-child:nth-of-type(5){grid-column:auto}@media(max-width:1050px){.categorybar{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:9px 16px}.categorybar>span{display:none}.categorybar>a,.categorybar>a:last-child{font-size:12px;padding:9px 12px}}@media(max-width:700px){.categorybar{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:8px 12px}.categorybar>a,.categorybar>a:last-child{font-size:11px;padding:8px 10px;min-height:38px}.categorybar>b{font-size:11px}}

/* Explicit rental-only mother hair benefit */
.campaign-perk .mother-benefit-condition{display:block;font-size:20px;line-height:1.65;margin-top:6px}.campaign-perk .mother-benefit-exclusion{font-size:14px;font-weight:700;margin-top:9px}.benefit strong{line-height:1.7}

/* Seven service tags and standalone photography options. */
.categorybar{grid-template-columns:auto repeat(7,minmax(0,1fr))}.photography-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.photography-card{padding:32px;border:1px solid #b7c3ac;background:#fffdf7;border-radius:6px}.photography-card h3{font-size:28px}.photography-price{font:500 42px/1.4 Georgia,serif;color:#314a39;margin:22px 0 8px}.photography-price span{font:14px sans-serif}.photography-holiday{font-weight:700}.photography-data{font-size:20px}.photography-partner{grid-column:1/-1;display:grid;grid-template-columns:1.4fr 1fr;gap:32px;background:#f0f3eb;border-top:4px solid #627751}.photography-weekdays{display:inline-block;padding:6px 16px;border:1px solid #627751;border-radius:20px}.photography-note{margin-top:22px}.photography-inclusions{padding:20px;background:#fff0cb;margin-bottom:24px}@media(max-width:1050px){.categorybar{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:700px){.categorybar{grid-template-columns:repeat(2,minmax(0,1fr))}.categorybar>a:last-child{grid-column:1/-1}.photography-grid,.photography-partner{grid-template-columns:minmax(0,1fr)}.photography-card{padding:24px}.photography-card h3{font-size:25px}.photography-price{font-size:36px}}

.partner-family-conditions{grid-column:1/-1;padding-top:20px;border-top:1px solid #b7c3ac}.partner-family-conditions h4{font-size:20px;margin:0 0 12px}.partner-family-conditions ul{display:flex;flex-wrap:wrap;gap:12px;padding:0;list-style:none}.partner-family-conditions li{background:#fffdf7;border:1px solid #b7c3ac;padding:12px 16px;border-radius:4px;font-weight:700}.partner-exclusions{font-size:14px;line-height:1.8}@media(max-width:700px){.partner-family-conditions ul{display:grid;grid-template-columns:1fr}}

/* Preserve both parents head-to-toe; never crop this full-body source. */
.parentsstory>figure{align-self:center;min-height:0}.parentsstory figure img{position:static;inset:auto;display:block;width:100%;height:auto;min-height:0;aspect-ratio:3/2;object-fit:contain}

/* Three-language navigation and optional Instagram benefit */
.language-switcher{display:flex;justify-content:flex-end;gap:5px;padding:8px 5%;background:#f7f5ef;border-bottom:1px solid #dce3db;font-size:12px;line-height:1.4}.language-switcher a{padding:6px 12px;border-radius:3px}.language-switcher a[aria-current=page]{background:#284e3d;color:#fff}.instagram-benefit{padding:24px 28px;margin:24px 0 30px;background:#f7f5ef;border-left:4px solid #b69b68}.instagram-benefit h3{font-size:20px}.instagram-benefit p{margin-top:8px;font-size:14px}.instagram-benefit small{display:block;margin-top:9px;color:#69766d;font-size:12px}html[lang=en] h1,html[lang=en] h2,html[lang=en] h3{letter-spacing:.01em;line-height:1.4}html[lang=en] .vertical{writing-mode:horizontal-tb;max-width:200px;line-height:1.6}html[lang=en] .brand span{font-size:15px;letter-spacing:.02em}html[lang=en] .categorybar{flex-wrap:wrap}html[lang=en] header{gap:24px}html[lang=en] header nav{gap:15px}html[lang=en] .planlabel span{float:none;display:block;margin-top:8px}html[lang=zh-Hans] body{font-family:'Noto Sans CJK SC','Microsoft YaHei',sans-serif}html[lang=zh-Hans] .eyebrow{letter-spacing:.1em}html[lang=en] .earlyfigure{flex-wrap:wrap}html[lang=en] .bigprice span{white-space:normal}html[lang=en] .brand{flex-shrink:0}html[lang=en] .sectionhead p{max-width:75ch}@media(max-width:1100px){html[lang=en] header{height:auto;min-height:100px;gap:16px;flex-wrap:wrap;padding-top:15px;padding-bottom:15px}html[lang=en] header nav{flex-wrap:wrap}}@media(max-width:700px){.language-switcher{justify-content:center}.instagram-benefit{padding:20px}.instagram-benefit h3{font-size:18px}html[lang=en] .bigprice{font-size:42px}html[lang=en] .herocopy{padding:35px 7%}html[lang=en] h1{font-size:34px}html[lang=en] .earlyfigure{gap:10px}html[lang=en] .vertical{display:none}}
