/* LP-comp refinement. Keep the approved lacquer palette and editable type. */
.site-header nav{font-size:12px;gap:32px}
.site-header nav a{min-height:44px}
.body-copy,.course-copy>p:not(.course-index):not(.price),.space-description{font-size:16px;line-height:2}
.philosophy-grid{gap:11%;align-items:start}
.philosophy-copy h2 span{display:block}
.section-label{font-size:11px}
.section-label span{font-size:9px}
.craft-scene{position:relative;margin-top:100px;padding-bottom:45px}
.craft-photo{width:88%;margin-left:auto}
.craft-photo img{width:100%;aspect-ratio:1.65;object-fit:cover}
.craft-photo figcaption{text-align:right;font-size:11px;color:#bfc3ae;letter-spacing:.12em;margin-top:12px}
.craft-caption{position:absolute;left:0;bottom:0;background:#1b2b20;padding:40px 43px 42px;border:1px solid #b5a07166;box-shadow:14px 14px 0 #0d160c66}
.craft-caption .eyebrow{color:#c4b184;font-size:10px;letter-spacing:.21em;margin-bottom:22px}
.craft-caption h3{font-size:30px;line-height:1.8;letter-spacing:.1em;color:#eee6d5}
.craft-caption h3 span{display:block}
.craft-caption>p:last-child{font-size:16px;line-height:2;color:#cbd0c0;margin-top:22px}
.three-notes{margin-top:70px;gap:35px}
.three-notes>div{padding-left:0;padding-top:28px}
.note-number{top:-8px;font-size:12px}
.three-notes p{font-size:16px;line-height:1.9}
.three-notes h3{font-size:22px}
.section-heading>p{font-size:16px;line-height:1.9;max-width:460px}
.course-card{grid-template-columns:.9fr 1.1fr;gap:62px;align-items:start;padding-block:60px}
.course-card figure{margin-top:44px}
.course-index{font-size:11px}
.course-copy h3>span{font-size:12px}
.course-copy h3{display:flex;align-items:baseline;flex-wrap:wrap}
.course-copy h3>span{display:block}
.price{font-size:40px}
.price small{font-size:12px}
/* Baseline-aligned independent labels, rather than a new line of heading text. */
.price{display:flex;align-items:baseline;flex-wrap:wrap;column-gap:5px}
.price>span{display:block;margin-left:0}
.price small{display:block;flex-basis:100%}
.menu-line{font-size:13px;line-height:2}
.course-count{display:flex;gap:0;font-size:13px;letter-spacing:.08em;margin-top:20px}
.course-count span+span{margin-left:16px;padding-left:16px;border-left:1px solid #b5a07166}
.course-select{display:flex;justify-content:space-between;align-items:center;gap:18px;min-height:58px;width:100%;padding:12px 18px;background:transparent;border:1px solid #b5a07185;color:#e4cfa2;margin-top:25px;font-family:var(--serif);font-size:17px;letter-spacing:.06em;transition:background .2s,border-color .2s}
.course-select:hover{background:#1b2b20;border-color:#e4cfa2}
.course-card figcaption{font-size:11px;line-height:1.8;text-align:left;letter-spacing:.02em}
.course-footnote{font-size:14px;line-height:1.9}
.course-footnote p+p{margin-top:12px}
.space-description{gap:60px}
.space-gallery figcaption{font-size:12px;line-height:1.8}
.reservation-title>p:last-child{font-size:16px;line-height:1.9}
.reservation-details dt{font-size:13px}
.reservation-details dd{font-size:15px}
.reservation-details dd span{font-size:12px}
.reservation-details dl>div{grid-template-columns:84px 1fr}
.reservation .microcopy{font-size:13px}
.reservation .demo-disclaimer{font-size:12px}
.guest-note{font-size:13px}
.guest-note p{font-size:14px;line-height:1.9}
footer{font-size:12px}
footer .text-button{font-size:12px}
footer small{font-size:10px}
.dialog-intro,.form-purpose,#privacy-dialog>p:not(.eyebrow),.result-disclaimer{font-size:14px;line-height:1.9}
form label{font-size:14px}
input,select{font-size:16px;height:50px}
.privacy-inline{font-size:12px}
#result-details div{font-size:14px}
@media(min-width:701px) and (max-width:1100px){
 .section-heading{display:block}
 .section-heading>p{margin-top:24px}
 .philosophy-grid{grid-template-columns:.8fr 1.2fr;gap:9%}
 .course-card{gap:35px}
 .craft-caption{padding:28px}
 .craft-caption h3{font-size:26px}
 .three-notes{grid-template-columns:1fr;gap:28px;margin-top:55px}
 .three-notes>div{padding:0 0 0 40px}
 .note-number{top:6px}
 .reservation-grid{grid-template-columns:.85fr 1.15fr;gap:7%}
 .reservation-title h2{font-size:28px}
}
@media(max-width:700px){
 .content-width{width:calc(100% - 48px)}
 .body-copy,.course-copy>p:not(.course-index):not(.price),.space-description{font-size:16px;line-height:1.95}
 .section-label{font-size:11px;letter-spacing:.12em}
 .section-label span{display:block;margin:6px 0 0;font-size:9px;letter-spacing:.17em}
 .philosophy-copy h2{font-size:31px;line-height:1.85}
 .entrance-figure figcaption{font-size:11px}
 .craft-scene{margin-top:62px;padding-bottom:0;width:100%}
 .craft-photo{width:100%}
 .craft-photo img{aspect-ratio:1.25;object-position:68% 50%}
 .craft-photo figcaption{margin-right:24px;font-size:10px}
 .craft-caption{position:relative;width:calc(100% - 64px);margin:-30px 0 0 24px;padding:28px 23px 30px;box-shadow:9px 9px 0 #0d160c66}
 .craft-caption h3{font-size:26px;letter-spacing:.08em}
 .craft-caption .eyebrow{font-size:9px;margin-bottom:16px}
 .craft-caption>p:last-child{font-size:16px;line-height:1.9;margin-top:18px}
 .three-notes{margin-top:58px;padding-top:28px;gap:29px}
 .three-notes>div{padding:0 0 0 34px}
 .note-number{top:4px;font-size:11px}
 .three-notes h3{font-size:22px}
 .three-notes p{font-size:16px;line-height:1.9}
 .section-heading h2{font-size:30px;letter-spacing:.06em}
 .section-heading>p{font-size:16px;line-height:1.9}
 .course-card{padding-block:34px 42px;gap:28px}
 .course-card figure{margin-top:0}
 .course-card figcaption{font-size:10px}
 .course-index{font-size:11px}
 .course-copy h3{font-size:30px}
 .price{font-size:38px}
 .price small{font-size:11px;margin-left:12px;letter-spacing:.02em}
 .price small{flex-basis:auto}
 .course-count{font-size:13px}
 .course-select{font-size:17px}
 .course-footnote{font-size:14px;line-height:1.9}
 .space-description{gap:24px}
 .space-gallery figcaption{font-size:11px}
 .reservation-details dl>div{grid-template-columns:78px 1fr}
 .reservation-details dd{font-size:14px}
 .reservation-details dt{font-size:12px}
 .sticky-cta>p>small,.sticky-cta>div>small{font-size:9px}
 .sticky-cta>div{width:52%}
 footer{font-size:12px;line-height:1.9}
 dialog h2{font-size:25px}
}
@media(max-width:350px){
 .craft-caption{width:calc(100% - 48px);padding-inline:20px}
 .craft-caption h3{font-size:24px}
 .craft-caption>p:last-child{font-size:16px}
 .price small{display:block;margin:4px 0 0}
 .price small{flex-basis:100%}
 .section-heading h2{font-size:28px}
 .reservation-title h2{font-size:28px}
 .sticky-cta>p>small{font-size:8px}
 .sticky-cta>div>small{font-size:8px}
}
