/* Editorial sections keep the ocean reference quiet and the information easy to scan. */
.section{padding:clamp(5rem,8vw,8.5rem) 0;scroll-margin-top:2rem}
.section-kicker{display:flex;align-items:center;gap:1rem;margin:0 0 1.6rem;color:#315e5c;font-size:.86rem;font-weight:700;letter-spacing:.07em}
.section-kicker:before{content:"";display:block;width:34px;border-top:2px solid #719c9b}
.section-title{font-family:var(--serif);font-size:clamp(2.55rem,3.8vw,4.1rem);font-weight:700;line-height:1.38;letter-spacing:-.065em;margin:0 0 1.8rem;word-break:keep-all}
.section-lead{max-width:38rem;color:#3e514c;font-size:clamp(1.08rem,1.4vw,1.3rem);line-height:1.9;word-break:keep-all}
.intro{background:#faf9f5}.intro-grid,.work-grid,.teacher-grid,.faq-grid{display:grid;grid-template-columns:44% 1fr;gap:9%;align-items:start}.intro-content{padding-top:2.5rem}.intro-content .section-lead{margin-bottom:2.6rem}.intro-list{border-top:1px solid #b8c6c2}.intro-list>div{display:grid;grid-template-columns:3.6rem 1fr;column-gap:1rem;padding:1.45rem 0;border-bottom:1px solid #cdd8d2}.intro-list span{grid-row:span 2;color:#65817a;font-family:var(--serif);font-size:1.25rem}.intro-list strong{font-family:var(--serif);font-size:1.28rem;letter-spacing:-.045em}.intro-list p{grid-column:2;color:#566762;margin:.35rem 0 0;line-height:1.75}
.story{padding-bottom:0;background:#edf4f2}.story>.container{padding-bottom:clamp(5rem,8vw,8.5rem)}.story-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:2.3rem;margin-top:4rem}.story-columns article{border-top:1px solid #a9c0bb;padding-top:1.45rem}.story-columns article>span{color:#527a78;font-size:.83rem;font-weight:700;letter-spacing:.05em}.story-columns h3{font-family:var(--serif);font-size:clamp(1.45rem,2.1vw,2rem);line-height:1.5;letter-spacing:-.05em;margin:1.5rem 0 1rem}.story-columns p{color:#52665f;line-height:1.85;margin-bottom:1.35rem;word-break:keep-all}.story-statement{position:relative;overflow:hidden;background:radial-gradient(ellipse at 82% -55%,#5c8a84 0%,transparent 50%),linear-gradient(130deg,#163b38,#0f302e 72%,#0c2a2a);color:#fff;padding:5.5rem 0}.story-statement:after{content:"";position:absolute;inset:auto -10% -52% 35%;height:150%;border:1px solid #b9d3ce22;border-radius:50%;transform:rotate(-12deg);pointer-events:none}.story-statement .container{position:relative;z-index:1}.story-statement p{color:#a8ccc6;font-size:.86rem;letter-spacing:.1em;font-weight:700;margin-bottom:1rem}.story-statement strong{display:block;font-family:var(--serif);font-size:clamp(2.15rem,3.6vw,3.8rem);line-height:1.45;letter-spacing:-.065em}.story-statement span{display:block;color:#d4e4de;margin-top:1.8rem}
.proof{background:#fbfbf8}.proof-grid{display:grid;grid-template-columns:42% 1fr;gap:7%;align-items:center}.proof-copy .section-lead{margin-bottom:2rem}.proof-links{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}.button-dark{background:var(--green)}.proof-note{font-size:.82rem;color:#65746e;margin-top:1.3rem}.proof-visual{position:relative;min-height:530px;padding:2.8rem 7rem 2.2rem 0}.proof-browser{background:#fff;border:1px solid #dbe3df;box-shadow:0 28px 55px #193e3030;border-radius:10px;overflow:hidden;transform:rotate(-2deg);height:380px}.proof-browser-top{height:32px;background:#f4f7f7;border-bottom:1px solid #e4e9e8;display:flex;align-items:center;gap:5px;padding:0 12px}.proof-browser-top i{display:block;width:7px;height:7px;border-radius:50%;background:#bfcbc9}.proof-browser-top span{font-size:.65rem;color:#6a7b77;margin-left:1rem}.proof-browser-body{padding:2.6rem;background:linear-gradient(160deg,#f8fffd,#fff 55%,#eff9f6)}.ddok-wordmark{font-weight:700;color:#193c38;font-size:1.5rem;letter-spacing:-.07em}.ddok-wordmark span{color:#6faaa0}.proof-browser-body>p{font-size:1.23rem;line-height:1.6;letter-spacing:-.04em;margin:2rem 0}.ddok-pills{display:flex;gap:.5rem}.ddok-pills span{padding:.3rem .8rem;border-radius:25px;background:#eaf4f1;font-size:.75rem;color:#4f7369}.ddok-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin-top:1.6rem}.ddok-tiles>div{height:72px;border-radius:8px;background:linear-gradient(135deg,#e1eee9,#c8ddd3)}.ddok-tiles>div:nth-child(2){background:linear-gradient(135deg,#dceeea,#b5d0c5)}.ddok-tiles>div:nth-child(3){background:linear-gradient(135deg,#f0e8d5,#d3e2cf)}.proof-phone{position:absolute;top:5rem;right:0;width:176px;height:355px;background:#192e2b;padding:7px;border-radius:24px;box-shadow:0 22px 40px #153d3333;transform:rotate(5deg);overflow:hidden}.proof-phone img{display:block;width:100%;height:100%;object-fit:cover;object-position:top;border-radius:18px}.proof-caption{position:absolute;right:0;bottom:1rem;font-size:.78rem;color:#6e7c76}
.work{background:#f3f5ef}.work-grid{align-items:center}.work-list>div{display:grid;grid-template-columns:4rem 1fr;gap:1rem;border-top:1px solid #bdccc4;padding:1.35rem 0}.work-list>div:last-of-type{border-bottom:1px solid #bdccc4}.work-list>div>span{font-family:var(--serif);font-size:1.45rem;color:#718e86}.work-list h3{font-family:var(--serif);font-size:1.42rem;letter-spacing:-.04em;margin:0 0 .3rem}.work-list p{color:#566861;margin:0}.work-list small{display:block;color:#6c7b73;margin-top:1rem}
.teacher{background:#fcfbf7}.teacher-name{font-family:var(--serif);font-size:2.25rem;font-weight:700;margin-top:2.2rem;margin-bottom:.2rem}.teacher-role{color:#32605b;font-weight:700}.teacher-grid>div:first-child>p:last-child{color:#5e6e68}.teacher-evidence{border:1px solid #d1ddd5;background:#f5f9f5;padding:2.1rem}.teacher-evidence>h3{font-family:var(--serif);font-size:1.55rem;margin-bottom:1.7rem}.teacher-evidence>div{border-top:1px solid #c8d8d0;padding:1.45rem 0}.teacher-evidence>div:last-child{padding-bottom:0}.teacher-evidence span{display:block;color:#5f8178;font-size:.81rem;font-weight:700;letter-spacing:.06em}.teacher-evidence h4{font-family:var(--serif);font-size:1.27rem;letter-spacing:-.04em;margin:.55rem 0}.teacher-evidence p{color:#546961;margin-bottom:.8rem}.teacher-evidence small{display:block;color:#79837e;margin-top:.6rem}
.education{background:#e8f1ee}.education .section-lead{margin-bottom:2.7rem}.lesson-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.3rem}.lesson-grid article{background:#fff;border:1px solid #d1ded6;padding:2rem 2.2rem 2.3rem;min-height:300px}.lesson-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d7e1da;padding-bottom:1.2rem}.lesson-head span{font-family:var(--serif);font-size:2rem;color:#54887f}.lesson-head p{margin:0;color:#4f7169;font-weight:700}.lesson-grid h3{font-family:var(--serif);font-size:1.65rem;letter-spacing:-.04em;margin:1.5rem 0 1rem}.lesson-grid ul{margin:0;padding-left:1.2rem;color:#475e55;line-height:2}.schedule-note{margin:1.5rem 0 0;color:#536b62}
.pricing{background:linear-gradient(150deg,#143b38,#0e2928);color:#fff}.pricing-grid{display:grid;grid-template-columns:47% 1fr;gap:7%;align-items:center}.pricing .section-kicker{color:#a7d0c9}.pricing .section-kicker:before{border-color:#a7d0c9}.pricing .section-title{font-size:clamp(2.45rem,3.5vw,3.8rem)}.price-card{background:#fdfbf6;color:#19352e;padding:clamp(2rem,3vw,3rem);box-shadow:0 23px 40px #001b1955}.price-card>p:first-child{font-weight:700;margin-bottom:1.5rem}.price-card>strong{display:block;font-family:var(--serif);font-size:clamp(2.6rem,4vw,4rem);letter-spacing:-.06em;line-height:1.2}.price-card>span{display:block;color:#52675d;margin-top:.6rem}.price-card hr,.application-summary hr{border:0;border-top:1px solid #cdd8d0;margin:2rem 0}.price-card h3{font-family:var(--serif);font-size:1.5rem;letter-spacing:-.045em}.price-card>p:not(:first-child){color:#52675d;line-height:1.75}.button-light{background:var(--green);width:100%;margin-top:.6rem}
.faq{background:#fafaf6}.faq-items{border-top:1px solid #b9c8c0}.faq-items details{border-bottom:1px solid #b9c8c0}.faq-items summary{position:relative;cursor:pointer;list-style:none;font-family:var(--serif);font-size:1.2rem;font-weight:600;letter-spacing:-.045em;padding:1.4rem 2rem 1.4rem 0}.faq-items summary::-webkit-details-marker{display:none}.faq-items summary:after{content:"+";position:absolute;right:.15rem;color:#578179;font-family:var(--sans);font-size:1.6rem;font-weight:400;line-height:1}.faq-items details[open] summary:after{content:"−"}.faq-items details p{color:#50635b;margin:0;padding:0 1.5rem 1.5rem 0;line-height:1.85}
.apply{background:#eef4f0}.apply>.container>.section-lead{max-width:48rem;margin-bottom:2.7rem}.apply-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:1.5rem;align-items:start}.application-form,.application-summary{background:#fff;border:1px solid #d2dfd6;padding:clamp(1.5rem,3vw,2.7rem)}.application-form h3,.application-summary h3{font-family:var(--serif);font-size:1.65rem;letter-spacing:-.04em;margin-bottom:1.8rem}.application-form label{display:block;font-weight:700;margin-bottom:1.25rem;color:#28453a}.application-form input:not([type=checkbox]),.application-form textarea{display:block;width:100%;border:1px solid #bdcec5;background:#fbfcf9;border-radius:4px;padding:.85rem 1rem;font-weight:400;color:#182e27;margin-top:.55rem;outline-offset:2px}.application-form textarea{resize:vertical;min-height:130px}.application-form input::placeholder,.application-form textarea::placeholder{color:#84948b}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-schedule{color:#53736a;font-size:.9rem}.application-form .check-row{display:flex;align-items:flex-start;gap:.7rem;font-size:.93rem;line-height:1.5;margin:1.45rem 0 .75rem}.check-row input{width:18px;height:18px;flex:none;accent-color:#1a4c3f;margin-top:.15rem}.form-disclosure{color:#5b7066;font-size:.83rem;line-height:1.7;margin-bottom:1.3rem}.application-form>.button{border:0;cursor:pointer;min-height:55px;padding-inline:1.7rem}.email-fallback{background:#f0f7f3;border-left:3px solid #4b8073;padding:1rem;margin-top:1.25rem}.email-fallback p{margin:0 0 .6rem}.email-fallback a{text-decoration:underline;text-underline-offset:3px}.email-fallback button{border:1px solid #789a8b;background:white;color:#1d473a;border-radius:3px;padding:.4rem .7rem;cursor:pointer}.email-fallback span{display:block;margin-top:.5rem;color:#345a4d}.application-summary{background:#f8faf7}.application-summary>p:first-of-type{color:#5a7064}.application-summary>span{display:block;color:#577064;font-size:.9rem}.application-summary>strong{display:block;font-family:var(--serif);font-size:clamp(2.1rem,2.7vw,3rem);letter-spacing:-.055em}.application-summary>small{display:block;color:#61796c}.application-summary h4{font-family:var(--serif);font-size:1.2rem;letter-spacing:-.035em;margin-bottom:.55rem}.application-summary h4+p{color:#4d6559;line-height:1.8}
.site-footer{background:#102d2b;color:#e7f0ea;padding:3.3rem 0}.footer-grid{display:grid;grid-template-columns:1.15fr .75fr 1fr;gap:3rem;align-items:start}.site-footer img{display:block;width:175px;height:auto;filter:brightness(0) invert(1);margin-bottom:1.1rem}.site-footer p{font-size:.87rem;line-height:1.9;color:#c7d9d2}.footer-grid>div:nth-child(2){display:grid;grid-template-columns:1fr 1fr;gap:.9rem;font-size:.88rem}.site-footer a:hover{text-decoration:underline}
@media(max-width:900px){.intro-grid,.work-grid,.teacher-grid,.faq-grid,.proof-grid,.pricing-grid{grid-template-columns:1fr;gap:2rem}.intro-content{padding-top:0}.story-columns{gap:1rem}.proof-visual{width:min(100%,620px)}.pricing-grid{gap:1.5rem}.apply-grid{grid-template-columns:1fr}.footer-grid{gap:1.5rem}.section{padding:5rem 0}}
@media(max-width:650px){.section-title{font-size:clamp(2.05rem,8.3vw,2.8rem)}.story-columns{grid-template-columns:1fr;gap:1.2rem;margin-top:2rem}.story-columns article{padding-top:1.3rem}.story-columns h3{margin:.9rem 0 .6rem}.story-statement{padding:4rem 0}.proof-visual{min-height:380px;padding:1rem 4.5rem 2rem 0}.proof-browser{height:290px}.proof-browser-body{padding:1.25rem}.ddok-wordmark{font-size:1.2rem}.proof-browser-body>p{font-size:.95rem;margin:1.3rem 0}.ddok-pills{gap:.2rem;flex-wrap:wrap}.ddok-pills span{font-size:.55rem;padding:.25rem .45rem}.ddok-tiles{margin-top:1rem}.ddok-tiles>div{height:50px}.proof-phone{width:110px;height:230px;top:2.5rem}.proof-caption{font-size:.68rem;bottom:1rem}.lesson-grid{grid-template-columns:1fr}.lesson-grid article{min-height:0}.form-row{grid-template-columns:1fr;gap:0}.footer-grid{grid-template-columns:1fr}.site-footer{padding:3rem 0}.proof-links{gap:1rem}}
