/* The Boathouse Rabbit mascot system | Site-wide, lightweight and intentionally scoped. */
.rabbit-page{background:#f7f3eb;color:#153d41;overflow:hidden}
.rabbit-page *,.rabbit-trail *,.rabbit-lake-feature *{box-sizing:border-box}
.rabbit-page a:focus-visible,.rabbit-trail a:focus-visible,.rabbit-lake-feature a:focus-visible{outline:3px solid #f2a36f;outline-offset:4px}
.rabbit-wrap{width:min(1190px,calc(100% - 44px));margin-inline:auto}
.rabbit-kicker,.rabbit-trail-eyebrow{font-size:.72rem;letter-spacing:.14em;font-weight:850;text-transform:uppercase}
.rabbit-hero{background:linear-gradient(99deg,#07353ff5 1%,#0d4d57e9 50%,#0c4b5a63 100%),url('/images/lake-horizon.svg') center/cover no-repeat;color:#fff7e9;position:relative}
.rabbit-hero-inner{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);gap:2rem;align-items:end;min-height:580px;padding:clamp(3rem,7vw,6rem) 0 0}
.rabbit-hero-copy{padding-bottom:clamp(3rem,6vw,6rem);position:relative;z-index:1}
.rabbit-kicker{color:#ffcf9c!important}
.rabbit-hero h1{font-family:Georgia,'Times New Roman',serif;font-weight:650;color:#fff8ed;font-size:clamp(3.35rem,5.4vw,6.1rem);line-height:1.04;letter-spacing:-.055em;margin:.5rem 0 1.3rem}
.rabbit-hero h1 em{font-weight:400;color:#ffd1a0}
.rabbit-hero-lead{max-width:620px;color:#f5f9f3;font-size:clamp(1.05rem,1.65vw,1.35rem);line-height:1.67}
.rabbit-hero-support{color:#d8e9e3;font-size:.94rem;line-height:1.7;max-width:610px}
.rabbit-hero-art{position:relative;align-self:end;display:flex;justify-content:center;min-width:0;overflow:visible}
.rabbit-hero-art:before{content:'';position:absolute;width:min(100%,470px);aspect-ratio:1;bottom:12%;border-radius:50%;background:#ffc57f4a;filter:blur(35px)}
.rabbit-hero-art img{position:relative;z-index:1;width:min(100%,485px);height:auto;max-height:580px;object-fit:contain;object-position:bottom;filter:drop-shadow(0 17px 24px #04253277)}
.rabbit-buttons{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.7rem}
.rabbit-button{display:inline-flex;align-items:center;gap:.7rem;border-radius:999px;min-height:48px;padding:.7rem 1.25rem;font-size:.88rem;font-weight:850;text-decoration:none}
.rabbit-button--orange{background:#f6a15b;color:#17353b}
.rabbit-button--orange:hover{background:#ffcc9e;color:#102f35}
.rabbit-button--outline{border:1.5px solid #e1f0e6;color:#fff9f2;background:#094b5873}
.rabbit-button--outline:hover{background:#f6f3eb;color:#073f46}
.rabbit-section{padding:clamp(3.5rem,7vw,6rem) 0}
.rabbit-section h2{font-family:Georgia,'Times New Roman',serif;color:#0e4449;font-size:clamp(2rem,3.7vw,3.65rem);font-weight:650;line-height:1.13;letter-spacing:-.045em;margin:.4rem 0 1.2rem}
.rabbit-section h2 em{color:#a45a2d;font-weight:400}
.rabbit-section p{color:#405753;line-height:1.78}
.rabbit-section-intro{font-size:1.08rem;max-width:790px}
.rabbit-overline{color:#954a22!important;letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;font-weight:850}
.rabbit-profile{background:#e7efe7;border-top:1px solid #d0dfd4;border-bottom:1px solid #d0dfd4}
.rabbit-profile-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(2rem,6vw,6rem);align-items:start}
.rabbit-identity{background:#fffdfa;border:1px solid #d4e0d7;border-radius:17px;padding:clamp(1.5rem,3vw,2.7rem);box-shadow:0 8px 30px #124e4811}
.rabbit-identity p{margin:.55rem 0}
.rabbit-identity dl{display:grid;grid-template-columns:max-content 1fr;column-gap:1.5rem;row-gap:.95rem;margin:1.4rem 0 0}
.rabbit-identity dt{font-size:.83rem;font-weight:850;color:#0b4a53}
.rabbit-identity dd{font-size:.9rem;color:#405752;margin:0}
.rabbit-skills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:2rem}
.rabbit-skill{padding:1.4rem;background:#fffdf8;border:1px solid #d3dfd5;border-radius:14px}
.rabbit-skill .rabbit-icon{font-size:1.6rem;display:block;margin-bottom:.6rem}
.rabbit-skill h3{font-family:Georgia,'Times New Roman',serif;font-size:1.43rem;color:#12434b;margin:0 0 .4rem}
.rabbit-skill p{font-size:.88rem;margin:0}
.rabbit-disclaimer{border-left:4px solid #a45a2d;background:#fffdf8;padding:1.4rem 1.6rem;border-radius:0 12px 12px 0;margin-top:2rem;color:#4b5751}
.rabbit-disclaimer p{margin:0;color:#405651;font-size:.91rem}
.rabbit-philosophy{text-align:center;background:linear-gradient(115deg,#073942,#135d66);padding:clamp(3rem,6vw,5rem) 0}
.rabbit-philosophy blockquote{max-width:900px;margin:0 auto 1rem;font-family:Georgia,'Times New Roman',serif;color:#fff7ed;font-size:clamp(1.65rem,3.2vw,3.2rem);line-height:1.36}
.rabbit-philosophy p{color:#d7eae4;margin:0}
.rabbit-trail{margin:clamp(2rem,4vw,4rem) 0;border-radius:18px;border:1px solid #cad9d0;background:#f5f4ea;color:#123b42;display:grid;grid-template-columns:minmax(125px,.32fr) minmax(0,1fr);align-items:center;gap:clamp(1rem,3vw,2.5rem);overflow:hidden;box-shadow:0 8px 30px #0d474511}
.rabbit-trail--curious{background:linear-gradient(125deg,#e1eee6,#fffaf1)}
.rabbit-trail--dock{background:linear-gradient(120deg,#dcebe7,#fff5e6)}
.rabbit-trail--gentle{background:#f4eee6;border-color:#d7d3ca}
.rabbit-trail-portrait{height:100%;min-height:190px;align-self:stretch;display:flex;align-items:end;justify-content:center;background:linear-gradient(160deg,#174c55,#0f6672)}
.rabbit-trail--gentle .rabbit-trail-portrait{background:linear-gradient(160deg,#52767a,#2e5358)}
.rabbit-trail-portrait img{width:100%;max-width:210px;height:220px;object-fit:contain;object-position:bottom;filter:drop-shadow(0 6px 12px #062e3855)}
.rabbit-trail-message{padding:1.5rem clamp(1rem,2.5vw,2.7rem) 1.6rem 0;min-width:0}
.rabbit-trail-eyebrow{color:#9d4b22!important;margin:0 0 .55rem}
.rabbit-trail h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(1.4rem,2.5vw,2.2rem);line-height:1.2;letter-spacing:-.04em;color:#0a4550;margin:0 0 .6rem}
.rabbit-trail-message p:not(.rabbit-trail-eyebrow){font-size:.95rem;line-height:1.7;color:#455b58;max-width:730px;margin:0 0 .9rem}
.rabbit-trail-message a{display:inline-flex;color:#89421e;font-size:.9rem;font-weight:850;text-decoration:underline;text-underline-offset:4px}
.rabbit-trail-message a:hover{color:#0f5359}
.rabbit-lake-feature{margin:2.5rem 0 3.5rem;border:1px solid #b9d8ce;border-radius:18px;overflow:hidden;background:#0a4653;color:#fff8ed}
.rabbit-lake-photo{display:grid;grid-template-columns:minmax(0,.94fr) minmax(0,.82fr);align-items:end;min-height:365px;background:linear-gradient(100deg,#053a46e9 0%,#0e515a8c 73%),url('/images/lake-horizon.svg') center/cover no-repeat}
.rabbit-lake-copy{padding:clamp(1.6rem,3vw,3rem);align-self:center}
.rabbit-lake-copy p{font-size:1.03rem;line-height:1.7;color:#e9f6ed}
.rabbit-lake-copy h2{font-family:Georgia,'Times New Roman',serif;font-weight:650;font-size:clamp(2rem,3.6vw,3.4rem);line-height:1.12;letter-spacing:-.045em;color:#fff8ef;margin:.4rem 0 1.1rem}
.rabbit-lake-copy a{color:#ffd0a0;text-decoration:underline;text-underline-offset:5px;font-weight:800;font-size:.91rem}
.rabbit-lake-copy a:hover{color:#fff}
.rabbit-lake-photo img{width:min(100%,380px);max-height:425px;object-fit:contain;object-position:bottom;justify-self:center;align-self:end;filter:drop-shadow(0 11px 18px #05283280)}
.rabbit-lake-feature figcaption{margin:0;background:#f3f5eb;color:#375551;padding:.65rem 1.15rem;font-size:.76rem;line-height:1.5}
@media(max-width:900px){
 .rabbit-hero-inner{grid-template-columns:minmax(0,1.15fr) minmax(215px,.85fr);min-height:540px}
 .rabbit-profile-grid{grid-template-columns:1fr;gap:2rem}
}
@media(max-width:700px){
 .rabbit-wrap{width:calc(100% - 36px)}
 .rabbit-hero-inner{grid-template-columns:1fr;min-height:0;gap:0;padding-top:3.5rem}
 .rabbit-hero h1{font-size:clamp(2.8rem,10.8vw,4.6rem)}
 .rabbit-hero-copy{padding-bottom:1.5rem}
 .rabbit-hero-art img{width:min(85%,360px);max-height:390px}
 .rabbit-skills{grid-template-columns:1fr}
 .rabbit-trail{grid-template-columns:120px 1fr;gap:.6rem}
 .rabbit-trail-portrait img{height:205px}
 .rabbit-trail-message{padding:1rem 1rem 1rem 0}
 .rabbit-trail h2{font-size:1.5rem}
 .rabbit-trail-message p:not(.rabbit-trail-eyebrow){font-size:.83rem}
 .rabbit-lake-photo{grid-template-columns:1fr;gap:0}
 .rabbit-lake-copy{padding:1.65rem}
 .rabbit-lake-photo img{max-height:300px;width:min(80%,310px)}
}
@media(max-width:460px){
 .rabbit-identity dl{grid-template-columns:1fr;gap:.15rem}
 .rabbit-identity dd{margin-bottom:.7rem}
 .rabbit-trail{grid-template-columns:1fr}
 .rabbit-trail-portrait{height:125px;min-height:125px;overflow:hidden;justify-content:flex-start;padding-left:1.2rem}
 .rabbit-trail-portrait img{height:175px;width:135px}
 .rabbit-trail-message{padding:.8rem 1.3rem 1.5rem}
}
@media(prefers-reduced-motion:reduce){.rabbit-page *,.rabbit-trail *{transition:none!important}}
